我在创建 CoreData 托管对象的应用程序中有一些代码。在此代码中,我使用以下行来设置属性:
theAuthor.authorID = 1;
该属性在托管对象标头中声明如下:
@property (nonatomic) uint32_t authorID;
在 iOS 5 中它工作正常,但是当我在 iOS 4.3 中调试时,我收到此错误:
属性“authorID”是“Author”类的标量类型。无法为其生成 setter 方法。
为什么我在 4.3 中收到此错误,但在 5 中没有?我应该避免标量属性吗?我从 C 来到 Obj-C,所以我更喜欢尽可能使用标量,因为它感觉更优化。
我会更好地实现 getter 和 setter 或更改我的代码以使用 NSInteger 或 NSNumber 吗?