Iphone 是/对的区别?
可能重复:Iphone 是/对的区别?,iphone,objective-c,macos,ipad,Iphone,Objective C,Macos,Ipad,可能重复: 我有一个问题,可以很快回答。 我有以下代码: .h UITableView *table; .m table.hidden = YES; table.hidden = TRUE; 最后两行代码之间有什么区别吗?还是完全相同的是和真?在objective-c中是和真是一回事 此外,它们可以表示为1和0,因为它们通常以这种方式存储在核心数据中 [NSNumber numberWithBool:YES]仅提供了与C代码向后兼容的TRUE宏(Objective-C被设计为C的严格超集
我有一个问题,可以很快回答。 我有以下代码:
.h
UITableView *table;
.m
table.hidden = YES;
table.hidden = TRUE;
最后两行代码之间有什么区别吗?还是完全相同的是和真?在objective-c中
是和真是一回事
此外,它们可以表示为1和0,因为它们通常以这种方式存储在核心数据中
[NSNumber numberWithBool:YES]
仅提供了与C代码向后兼容的TRUE
宏(Objective-C被设计为C的严格超集)。它们的意思是一样的。目标C中BOOL
的原始成功值是YES
TRUE
只是为了兼容性而模仿它。您可以同时使用这两种语言,但我强烈建议您使用最初为该语言设计的语言。这一点很重要,以防将来的语言更新会改变语言语法中的任何内容(这种情况下不太可能发生),使用原始语法不会导致您修复旧代码中的任何内容。我建议您选择一个并坚持使用它,最好是YES
,因为这样可以更明显地看出您编写的是Objective-C代码,而不是纯C代码,但这实际上是一个惯例问题。我相信他们在Objective-C中使用YES
,因为他们将BOOL
变量表达为问题,以符合方法命名惯例。像boolistrue=YES
它们像CD一样存储,因为核心数据存储对象,而BOOL不是,所以它使用NSNumber存储BOOL,类方法numberWithBool
和实例mathedboolValue
存储获取标量值。实际上,YES
和true
之间有一些细微差别。查看我的有趣问题: