【发布时间】:2014-01-19 06:46:29
【问题描述】:
所以我有一个实现 NSCoding 的 NSObject。在我的解码器方法中,它需要检索一个属于该类以及其他属性的 BOOL。
-(id)initWithCoder:(NSCoder *)decoder {
self = [super init];
if (self) {
[self setRandomObject:[decoder decodeObjectForKey:@"randomObjectKey"]];
[self setMyBool:[decoder decodeBoolForKey:@"myBoolKey"]];
}
return self;
}
然而,这会在[self setMyBool ... 的行上引发以下警告(黄色警告,仍可运行)。
Incompatible integer to pointer conversion sending 'BOOL' (aka 'signed char') to parameter of type 'BOOL *' (aka 'signed char *')
我不明白为什么它试图将一个布尔指针发送到一个布尔值。如果有人知道如何解决这个问题,请告诉我!非常感谢。
另外,现在已经很晚了,我很累,我可能只是错过了一些简单的事情,所以请多多包涵。
【问题讨论】:
-
myBool是属性吗?setMyBool:的类型签名是什么? -
再次阅读该错误消息 - 您正在将 from 整数(即 BOOL) 转换为 指向 BOOL 的指针。
标签: objective-c pointers boolean nscoding