在类扩展中只读属性覆盖

时间:2012-08-12 08:38:51

标签: objective-c xcode

我试图定义一些公共的readonly属性,它在object的方法范围内是可读写的,如下所示:

@interface MyObject : NSObject

@property (readonly, nonatomic, strong) id foo; // <-- WHAT'S THE CORRECT WAY

@end

//

@interface MyObject () 

@property (readwrite, nonatomic, strong) id foo;

@end

//

@implementation MyObject

@syntesize foo = _foo;

@end

但是当我在Xcode中输入@property (readonly, nonatomic, strong)时,它永远不会帮助我这样做。这是否意味着我做错了什么?财产标志是否重要?建议采用什么方法隐藏属性写入功能的实现?

1 个答案:

答案 0 :(得分:2)

这是一种常用且绝对正确的模式。如果您不喜欢Xcode的完成行为,您肯定可以提供雷达。