2
我读过(Effective Objective-C 2.0)static
在实现文件(m.file)中声明的变量对于定义它们的翻译单元是本地的,并且这些变量将不会公开在全局符号表中 。但是,如果在没有static
的情况下声明.m文件中的全局变量,则它的行为如同static
。那么static
是隐含在这种情况下使用还是这些是不同的事情?编译器是否包含全局符号表中没有静态修饰符的全局变量?
实施例:
//in the m.file
static int staticVariable;//100% static
int globalVariable;//is static ?
@implementation SomeClass {
//local ivars declaration
}