我可以将'NSNotFound'分配给NSInteger类型的属性吗?所以这就是我所拥有的:
@interfcae MyClass()
@property (nonatomic) NSInteger sectionNumber;
@end
@implementation MyClass
- (id)init
{
[my_switch isOn] ? self.sectionNumber = 0 : self.sectionNumber = NSNotFound;
}
@end
这会引发错误"Assignment to readonly property"
。即使我只是尝试"self.sectionNumber = NSNotFound"
,我也会遇到同样的错误。
我可以不将NSNotFound分配给属性吗?如果不是我可以选择的其他选项呢?
答案 0 :(得分:1)
您的代码应为:
- (id)init {
self.sectionNumber = [my_switch isOn] ? 0 : NSNotFound;
}
Wain对这个init
方法提出了一个很好的观点。将此重命名为init
以外的其他内容,或将其设置为正确的init
方法。
更新
根据您的评论,您在.h中有以下内容:
@property (nonatomic, readonly) NSInteger sectionNumber;
这意味着你需要.m:
@property (nonatomic, readwrite) NSInteger sectionNumber;