我在接口中声明了一个只读属性:
@property (readonly, nonatomic, copy) NSString* eventDomain;
也许我误解了属性,但我认为当您将其声明为readonly
时,可以在实现(.m
)文件中使用生成的setter,但外部实体无法更改该值.This SO question表示这是应该发生的.这就是我想要的行为.然而,当试图在init方法中使用标准setter或dot语法设置eventDomain
时,它给出了一个unrecognized selector sent to instance.
错误.我当然要把房子租出go .试着这样使用它:
// inside one of my init methods
[self setEventDomain:@"someString"]; // unrecognized selector sent to instance error
那么,我是否误解了房产readonly
%的申报?还是发生了什么事?