我最近尝试编译一个较旧的Xcode项目(它过去编译得很好),现在我看到很多这种形式的错误:
error: writable atomic property 'someProperty' cannot pair a synthesized setter/getter with a user defined setter/getter
导致这些错误的代码模式总是如下所示:
// Interface:
@property (retain) NSObject * someProperty;
// Implementation:
@synthesize someProperty; // to provide the getter
- (void)setSomeProperty:(NSObject *)newValue
{
//..
}
我知道为什么会产生这个错误。我告诉编译器合成我的属性访问器(包括getter和setter),然后立即手动覆盖setter。这段代码总是让人觉得有点不对劲。
那么,正确的方法是什么呢?如果我使用@dynamic
而不是@synthesize
,我也必须编写getter。这是唯一的办法吗?
https://stackoverflow.com/questions/3227176
复制相似问题