阅读此处的 Apple 文档,示例代码将原始访问器和修改器声明为类别中的单独方法。是否可以使用@property
声明原语?这样做有缺点吗?似乎它节省了样板代码,但是以这种方式声明的方法的生成方式是否存在性能影响?什么是可选属性——(强的,非原子的)?
苹果的示例代码
@interface Department : NSManagedObject
@property(nonatomic, retain) NSString *name;
@end
@interface Department (PrimitiveAccessors)
- (NSString *)primitiveName;
- (void)setPrimitiveName:(NSString *)newName;
@end
建议更改
@interface Department : NSManagedObject
@property(nonatomic, retain) NSString *name;
@end
@interface Department (PrimitiveAccessors)
@property (strong, nonatomic) NSString *primitiveName;
@end