简单的问题; 这些值之间是否存在差异(BOOL和bool之间是否存在差异)?一位同事提到他们在Objective-C中评估不同的东西,但是当我查看各自的.h文件中的typedef时,YES/TRUE/true都被定义为,1而NO/FALSE/false都被定义为0.真的有什么区别吗?
我想知道的区别nil,NIL和null.我用Google搜索了一下,发现了这个:
nil - >指向Objective-C对象的null指针
NIL - >指向Objective-C类的null指针
null - > null指向原始类型或缺少数据的指针
但我无法清楚地理解术语"Objective-C对象"和"类".
请向我解释一下.此外,有没有像任何文字NSNull或NSNil在Objective-C?如果是这样,那么请解释它的用途.
因此NULL,它通常用于指针,并且nil用于对象指针.
现在我也看到了Nil,它也被更低级的Obj-C运行时函数所使用class_getProperty.
这在某种程度上与nil哲学不同吗?(是的,我知道他们实际上都是0)
它为什么甚至被引入?或者,如果Nil是第一个(很可能),为什么会被nil引入?