strong vs weak

strong vs weak

strong and weak are descriptions or attributes that we have for pointers
强和弱是我们给指针的描述或属性

strong: "keep this in the heap until I don't point to it anymore"

I won't point to it anymore if I set my pointer to it to nil.

Or if I myself am removed from the heap because no one strongly points to me!

 

weak: "keep this as long as someone else points to ti strongly"

If it gets thrown out of the heap,set my pointer to it to nil automatically (if user on iOS 5 only).

 

This is not garbage collection! This is reference counting!

It's way better. It's reference counting done automatically for you.

garbage collection can have bad behavior, in that it is not controllable by you the programer.

这是引用计数技术,不是垃圾回收。当失去所有的strong指向时,立即释放内存。本地属性is strong

 

Finding out that you are about to leave the heap

A special method, dealloc, is called on you when your instance's memory is freed from the heap.

原文地址:https://www.cnblogs.com/mumue/p/2955986.html