iPhone:nil vs Nil和true vs TRUE之间的差异

时间:2012-03-06 06:08:18

标签: iphone objective-c ios

iOS开发中nilNil之间有什么区别?

同样iOS开发中trueTRUE之间的区别是什么?

2 个答案:

答案 0 :(得分:21)

我认为这有助于您了解nilNil之间的区别。

请找到以下链接:

请参阅Damien_The_Unbeliever的回答:

谷歌搜索“Nil vs nil”发现了这篇文章http://numbergrinder.com/node/49,其中指出:

  

这三个值中的所有三个都表示null或零指针值。该   区别在于,对于任何指针,NULL表示零,nil为   特定于对象(例如,id)和Nil特定于类指针。   应该将其视为使用正确null的最佳实践   即使在适当的情况下也可以用于文档目的   虽然没有什么可以阻止某人混合和匹配   他们一起去。

可以在此处看到该答案的链接:

What does 'Nil' represent in Obj-C?

修改-2:

Is there a difference between YES/NO,TRUE/FALSE and true/false in objective-c?

答案 1 :(得分:6)

nil是Objective-C对象的文字空值,对应于抽象类型id或通过@interface声明的任何Objective-C类型。例如:

NSString *someString = nil;
NSURL *someURL = nil;
id someObject = nil;

if (anotherObject == nil) // do something

Nil是Objective-C类的文字空值,对应于类型Class。由于大多数代码不需要变量来引用类,因此它的使用并不常见。一个例子是:

 Class someClass = Nil;
 Class anotherClass = [NSString class];