OBJC_EXPORT id object_getIvar(id obj, Ivar ivar)
这个方法的返回值只能是id类型,对于值类型是无法返回的就会崩溃。文档里边已经说明的很明确了。因为oc是机制,因此你编译时是不会报错的。只会在运行时发现返回的却不是id类型,发生崩溃。
如果你系那个访问一个类的属性完全可以通过下边这个方法:
- (nullable id)valueForKey:(NSString *)key;
OBJC_EXPORT id object_getIvar(id obj, Ivar ivar)
这个方法的返回值只能是id类型,对于值类型是无法返回的就会崩溃。文档里边已经说明的很明确了。因为oc是机制,因此你编译时是不会报错的。只会在运行时发现返回的却不是id类型,发生崩溃。
如果你系那个访问一个类的属性完全可以通过下边这个方法:
- (nullable id)valueForKey:(NSString *)key;