我试图定义一些公共的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)
时,它永远不会帮助我这样做。这是否意味着我做错了什么?财产标志是否重要?建议采用什么方法隐藏属性写入功能的实现?
答案 0 :(得分:2)
这是一种常用且绝对正确的模式。如果您不喜欢Xcode的完成行为,您肯定可以提供雷达。