我在我的Core Data实体中创建了一个名为“useSystem”的BOOL属性。另外为了让我获取/设置我创建了一个对象的数据,但每当我尝试设置合成BOOL时,我都会遇到总线错误。这是我的代码:
@property (nonatomic) const BOOL useSystem;
所以我正在做
[object setUseSystem:YES];
我立刻得到了总线错误。有人可以帮忙吗?
答案 0 :(得分:6)
使用[NSNumber numberWithBool:YES]
答案 1 :(得分:1)
实际上使用NSNumber作为属性类型可能更好。当您在xcode中使用模型编辑器向实体添加布尔属性时,也会发生这种情况。有'自动拳击'正在进行,但当我只使用更高级别的Objective-C类型和NSNumber这样的包装时,我似乎总是遇到麻烦。
答案 2 :(得分:0)
如果您明确声明方法但是它可能不适用于@synthesize,这应该有效。好像我以前做过这个,但也许我只是使用没有mutator方法的BOOL。 (如果你定义@property声明的方法,你可以使用没有@synthesize的@property。)