我有以下代码:
- (void)setItem:(Todo *)newItem {
item = newItem; }
为什么我做不到
- (void)setItem:(Todo *)newItem {
self.item = newItem; }
?
我的头文件中声明了项目,但是出现了EXC_BAD_ACCESS
错误?物品也没有合成。该方法旨在成为自定义设置器。
谢谢!
答案 0 :(得分:5)
self.item = newItem;
会导致无限循环,因为它正在调用setItem
。
答案 1 :(得分:1)
'self.item'的意思是'名为item的属性',而不是名为item的变量(与Java或C#不同)。只需使用'item = newItem;'。如果有必要,别忘了保留它!