我正在寻找有关 Objective-C 如何识别程序中的实体的信息。允许多少个字符,等等。我试过用谷歌搜索它,但我什么也想不出来。既然它是基于 C 的一方,那么命名/绑定/范围是否遵循 C 的命名/绑定/范围?任何帮助,将不胜感激。如果您有任何讨论这些事情的链接,它也会有所帮助。提前致谢。
问问题
179 次
1 回答
0
Objective-C 遵循与 C 相同的规则,然后为 C 中没有的 OO 特性添加了一些自己的规则。
与 C 中一样,变量名中可以包含的字符数没有硬性限制。
范围和可见性规则与 C 中的相同,尽管 Objective-C 对象几乎总是通过指针访问——并且对象本身的生命周期是通过引用计数或垃圾收集来管理的——因此范围在某种程度上不如 C 或C++。
一个主要区别是实例变量的作用域是它们所属的实例,您可以控制外部调用者是否可以使用,@public
和@protected
关键字@private
访问它们。
另一种区别是块。它们是Apple 对 C 的非标准 †</sup> 补充。块捕获它们周围的范围,只要块存在就保持周围的东西。块通常也会保留它们引用的对象,以确保这些对象不会被释放。您可以阅读 Apple 的块编程指南中的详细信息。
†</sup> Apple 已经提交了区块以进行标准化,但它还没有发生,而且可能永远不会真正发生,尽管如果这样做会非常好。
于 2012-11-06T18:23:40.893 回答