【发布时间】:2013-07-05 16:31:53
【问题描述】:
BOOL isChecked;
我这样声明布尔值。
它的默认值为NO吗?或者它的默认值是多少? [有吗?]
我应该始终在代码中自己将值设置为 YES 还是 NO?
【问题讨论】:
-
哎呀,这是一个错字*
标签: ios objective-c boolean
BOOL isChecked;
我这样声明布尔值。
它的默认值为NO吗?或者它的默认值是多少? [有吗?]
我应该始终在代码中自己将值设置为 YES 还是 NO?
【问题讨论】:
标签: ios objective-c boolean
BOOL 不是对象,因此您的示例代码声明了一个不指向任何地方的指针。我想你的意思是:
BOOL isChecked;
是的,您应该自己初始化它。在某些情况下(全局变量、实例变量),默认初始值将是 NO (0),但在其他情况下(局部变量)它将是未定义的。
【讨论】:
0(NO)。跨度>
通常您不会创建指向 BOOL 的指针。因为它是一个指针,所以它的默认值是nil。在您分配它之前,它实际上并不指向 BOOL,因此没有默认值。
你真的想要BOOL isChecked;,它的默认值是NO?
【讨论】:
ischecked 的价值是什么?
如果您要声明一个属性,那么它将有一个默认值 NO。否则如果它是一个局部实例变量,那么你就无法推测它的值。 :)
【讨论】:
如果 BOOL isChecked 是属性或 iVar,则默认值为 NO。但是如果它是一个局部变量,那么这个值就会有些垃圾。
【讨论】: