ios - 为什么当我使用 object_getIvar 查找 NSURL object 的实例变量时会崩溃?
问题描述
这是一个简单的测试程序,它会在 object_getIvar(url, ivars[I]) 处崩溃;崩溃信息是 Thread 1: EXC_BAD_ACCESS (code=1, address=0x200001d80)
int main(int argc, char * argv[]) {
NSURL *url = [NSURL URLWithString:@"dasadas"];
NSMutableArray *result = [NSMutableArray new];
unsigned int count;
Ivar *ivars = class_copyIvarList([NSURL class], &count);
for (unsigned int i = 0; i < count; ++i) {
id obj = object_getIvar(url, ivars[i]);
[result addObject:obj];
NSLog(@"%@",result);
}
free(ivars);
// @autoreleasepool {
// return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
// }
}
解决方案
推荐阅读
- javascript - 递归搜索获取元素
- asp.net-mvc-3 - 在 HTTP post 提交 MVC 3 后显示“确认”选项卡
- python - 导入 Bazel 构建 TensorFlow
- coldfusion - Coldfusion电子表格宽度限制
- css - 如何更改 Bootstrap 4 中禁用选项卡的样式?
- ember.js - ember 验收测试等待助手
- python - 从两个数据框访问行元素作为复合列表
- python - 如何创建一个迭代列表,其中一些变量是独立的,一些是依赖的?
- angular - 两个组件之间通过服务进行的通信不起作用
- r - 使用 grepl 为数据框创建函数