Reputation: 933
I have the following code:
- (void)setItem:(Todo *)newItem {
item = newItem; }
Why is it that I can't do
- (void)setItem:(Todo *)newItem {
self.item = newItem; }
?
I have item declared in my header file but I get a EXC_BAD_ACCESS
error? Item is also not synthesized. The method is meant to be a custom setter.
Thanks!
Upvotes: 0
Views: 448
Reputation: 22413
'self.item' means 'the property called item', not the variable called item (unlike Java or C#). Just use 'item = newItem;'. And don't forget to retain it if necessary!
Upvotes: 1
Reputation: 33465
self.item = newItem;
will cause an infinite loop since it's calling setItem
.
Upvotes: 5