我正在尝试将项目转换为使用ARC。
我有一个声明的属性,如:
@property (nonatomic, retain, setter=setSomeProperty:) SomeClass * someProperty;
接口中setter方法的声明:
-(void)setSomeProperty:(SomeClass *)value;
我有一个看起来像这样的setter的实现:
-(void)setSomeProperty:(SomeClass *)value
{
if (_value != value)
{
[_value release];
_value = [value retain];
}
// Other things...
}
我在尝试使用“转换为Objective-C ARC ...”工具时遇到错误:
错误:属性类型'someProperty'与访问者类型不匹配 'setSomeProperty:'[ - 错误,3]
答案 0 :(得分:8)
从界面中删除setSomeProperty
方法的声明。 @property
创建一个声明,默认的setter与声明的相同。
-(void)setSomeProperty:(SomeClass *)value;