OBJC_EXPORT id object_getIvar(id obj, Ivar ivar)
這個方法的返回值只能是id類型,對于值類型是無法返回的就會崩潰。文檔里邊已經(jīng)說明的很明確了。因為oc是機制,因此你編譯時是不會報錯的。只會在運行時發(fā)現(xiàn)返回的卻不是id類型,發(fā)生崩潰。

如果你系那個訪問一個類的屬性完全可以通過下邊這個方法:
- (nullable id)valueForKey:(NSString *)key;

OBJC_EXPORT id object_getIvar(id obj, Ivar ivar)
這個方法的返回值只能是id類型,對于值類型是無法返回的就會崩潰。文檔里邊已經(jīng)說明的很明確了。因為oc是機制,因此你編譯時是不會報錯的。只會在運行時發(fā)現(xiàn)返回的卻不是id類型,發(fā)生崩潰。
如果你系那個訪問一個類的屬性完全可以通過下邊這個方法:
- (nullable id)valueForKey:(NSString *)key;