ref – http://stackoverflow.com/questions/16461343/ivars-references-strong-weak-or-what
Default behavior of instance variable
Instance variable maintains a strong reference to the objects by default
Why don’t we specify weak/strong for iVar like properties?
Local variables and non-property instance variables maintain a strong references to objects by default. There’s no need to specify the strong attribute explicitly, because it is the default.
A variable maintains a strong reference to an object only as long as that variable is in scope, or until it is reassigned to another object or nil.
If you don’t want a variable to maintain a strong reference, you can declare it as __weak, like this:
1 |
NSObject * __weak weakVariable; |