This question already has an answer here:<ul><li> <a href="/questions/8927727/objective-c-arc-strong-vs-retain-and-weak-vs-assign" dir="ltr" rel="nofollow">Objective-C ARC: strong vs retain and weak vs assign</a> <span class="question-originals-answer-count"> 8 answers </span> </li> </ul>
What is Exact difference between strong and weak property in ios and if ARC is there then why to use strong instead of retain and weak instead of assign?Answer1:
You should look a little bit more in the internet for that question. It is a very common one you should find an answer easily.
Basically strong property are retained and weak are not. For an object you should use weak instead of assign because when released the weak property will be set to nil (not the assign). Keep assign for basic type (int, float, etc.) In ARC strong is defined as retain.
Most of the time: - for object property (array, dictionnary, etc.) use strong. - for delegates use weak. - for basic type (int, float, etc.) use assign.
You will find more detailed answers all over the internet.