iOS实例变量声明

时间:2014-06-08 09:26:34

标签: ios objective-c declaration ivar

我想知道声明我的实例变量之间的区别是什么:

// inside the implementation file (.m)

 @interface MyCustomObject()
 {
    id _myIvar;
 }

 @end

 @implementation MyCustomObject
 ...
 @end

就像这样:

// inside the implementation file (.m)

 @implementation MyCustomObject{
    id _myIvar;
 }
 ...
 @end

1 个答案:

答案 0 :(得分:0)

USE 的角度来看,没有区别

从声明的角度来看,第一个是Category

@interface MyCustomObject()
{

}

所以如果你在头文件中有一个同名的变量,那么你的实现文件会看到这个,但是其他类导入了这个标题文件,将看到另一个

此机制非常适用于将不同的属性或属性分配给相同的var ,但将公开的var与私有内部var 区分开来。