在objective-c中使用B​​OOL变量时发出警告

时间:2011-11-30 19:59:07

标签: iphone objective-c ios boolean

我正在尝试将我的BOOL变量初始化为YES但是它给了我这个警告..不太确定该怎么做..它似乎仍然工作正常但只是想知道如何摆脱警告。

我已经将标题中的变量初始化为

//的.h

BOOL *removeActivityIndicator;
//..
@property (nonatomic, assign) BOOL *removeActivityIndicator;

然后我尝试将它设置为YES(这也是我收到警告的地方)

self.removeActivityIndicator = YES;

警告说:

  

不兼容的整数到指针转换传递'BOOL'(又名   'signed char')对'BOOL *'(又名'signed char *')

类型的参数

3 个答案:

答案 0 :(得分:30)

警告是正确的;你已经将变量声明为BOOL *(指向BOOL的指针),这几乎肯定不是你想要的。从声明中删除*

答案 1 :(得分:4)

removeActivityIndicator是一个char 指针,你为它指定一个字符,所以:

  1. 将其更改为BOOL removeActivityIndicator;
  2. 取消引用它:*(self.removeActivityIndicator) = YES;

答案 2 :(得分:3)

你已经指向BOOL,这是一种原始类型。删除*前面的额外remoteActivityIndicator