@interface TestViewController ()
{
NSString *a;
}
@end
@implementation TestViewController
{
NSString *b;
}
似乎* a和* b相同,都是此文件中的私有全局变量。
谁能告诉我有什么区别?
答案 0 :(得分:2)
两者都是实例变量,而不是全局变量,但两种声明方法都是相同的。能够在@implementation
中声明实例变量是Objective-C的最新特性,并且是更好的位置 - 实例变量是类的实现的一部分,并且(通常)不是(公共)接口的一部分
答案 1 :(得分:0)
在类扩展中声明的@properties在其他类中不可见。