我想知道声明我的实例变量之间的区别是什么:
// inside the implementation file (.m)
@interface MyCustomObject()
{
id _myIvar;
}
@end
@implementation MyCustomObject
...
@end
就像这样:
// inside the implementation file (.m)
@implementation MyCustomObject{
id _myIvar;
}
...
@end
答案 0 :(得分:0)
从 USE 的角度来看,没有区别。
从声明的角度来看,第一个是Category
:
@interface MyCustomObject()
{
}
所以如果你在头文件中有一个同名的变量,那么你的实现文件会看到这个,但是其他类导入了这个标题文件,将看到另一个。
此机制非常适用于将不同的属性或属性分配给相同的var ,,但将公开的var与私有内部var 区分开来。