0

学习ios编程,请澄清为什么对布尔类型的引用会给我一个警告,但使用布尔类型的属性创建的变量不会有任何警告?

@property (nonatomic) BOOL *userTyped; //-> userTyped is pointer to BOOL type


-(IBAction) button:(UIButton *)sender {
    self.userTyped = YES; //-> will give a warning saying assigning char to BOOL
}

@property (nonatomic) BOOL userTyped; //-> userTyped acts as variable of BOOl type

-(IBAction) button:(UIButton *)sender {
    self.userTyped = YES; //-> this will not give warning.
}

谢谢你。

4

2 回答 2

3

BOOL *是一个指向布尔值的指针。请不要那样做。BOOL不是一个对象。如果要将其设置为self.userTyped = YES,则只需使用BOOL而不是BOOL *

于 2013-01-01T16:45:24.593 回答
0

在这一行:

self.userType = YES;

您正在尝试将指向 a 的指针设置为第一个示例中BOOLBOOL值。您需要将其设置为指向 a 的指针BOOL,或将类型从 更改BOOL*BOOL

于 2013-01-01T16:46:00.147 回答