Here is how I used to write a custom retained setter before:
- (void)setMyObject:(MyObject *)anObject
{
[_myObject release], _myObject = nil;
_myObject = [anObject retain];
// Other stuff
}
How can I achieve this with ARC when the property is set to strong. How can I make sure that the variable has strong pointer?
The
strong
takes care of itself on the ivar level, so you can merely doand that's it.
Note: if you're doing this without automatic properties, the ivar would be
and then ARC takes cares of the retains and releases for you (thankfully).
__strong
is the qualifier by default.Just to sum up the answer
.h file
.m file