【发布时间】:2011-10-23 16:53:13
【问题描述】:
在objective-c中,我可以在.m文件中声明int或bool等,外部任何函数。这让我可以在课堂上的任何地方使用这样的变量。
我也可以在接口块内的.h文件中声明这些变量,达到同样的效果。
好吧,我的问题是:有什么区别?有没有?还是只是组织问题?
【问题讨论】:
标签: objective-c variables
在objective-c中,我可以在.m文件中声明int或bool等,外部任何函数。这让我可以在课堂上的任何地方使用这样的变量。
我也可以在接口块内的.h文件中声明这些变量,达到同样的效果。
好吧,我的问题是:有什么区别?有没有?还是只是组织问题?
【问题讨论】:
标签: objective-c variables
在第二种情况下,它是一个具有外部链接的全局变量。这意味着,可以使用extern 关键字访问其他翻译单元/源文件。但在第一种情况下,它是接口的一部分,因此它只能由它的成员函数和任何其他从该接口派生的接口使用,具体取决于访问说明符。
【讨论】:
在第一种情况下,它们成为 .m 文件中的全局变量,并在接口的所有实例之间共享。在第二种情况下,多个实例将是分开的。常见的方式是在接口中声明接口变量
【讨论】: