【发布时间】:2012-11-12 01:00:04
【问题描述】:
我想在 MyClass.m 文件中定义私有实例变量。在我看来有两种方法可以做到:
-
使用类扩展
@interface HelloViewController () { int value; } -
在@implementation 部分定义
@implementation HelloViewController { int value; }
哪个更好?
我认为最近Apple的编码风格是使用类扩展?
例如MasterViewController.m 由 'Master-Detail Application Template' 生成
@interface MasterViewController () {
NSMutableArray *_objects;
}
@end
【问题讨论】:
-
为什么需要私有实例变量而不是私有属性?
-
当然是在@implementation - 少打字!
-
@PeterM 在实现中这样做意味着您不能将属性设置为读写/只读、原子/非原子和强/复制。看不出有多好。
标签: objective-c