我有以下代码: - (void)setItem:(Todo *)newItem { item = newItem; }
目标C概念解释
为什么我不能做 - (void)setItem:(Todo *)newItem { self.item = newItem; }
?
我有我的头文件中声明的项目,但我得到一个EXC_BAD_ACCESS
错误?项目也不合成。该方法旨在成为一个自定义设置器。
谢谢!
我有以下代码: - (void)setItem:(Todo *)newItem { item = newItem; }
目标C概念解释
为什么我不能做 - (void)setItem:(Todo *)newItem { self.item = newItem; }
?
我有我的头文件中声明的项目,但我得到一个EXC_BAD_ACCESS
错误?项目也不合成。该方法旨在成为一个自定义设置器。
谢谢!
self.item = newItem;
将导致无限循环,因为它叫setItem
。
“self.item”表示“属性称为item”,而不是称为item的变量(与Java或C#不同)。只需使用'item = newItem;'。如果有必要,不要忘记保留它!