关于object-C中的ARC机制

关于ARC与MRC机制的解释见如下博客:http://blog.csdn.net/fightingbull/article/details/8098133

关于ARC机制的应用@autoreleasepool

指示符;

strong、weak:strong指示符指定该属性对被赋值对象持有强引用,而weak指示符指定该属性对被赋值对象持有弱引用。强引用是指只要改强引用指向被赋值的对象,那该对象就不会自动回收,若引用的意思是,即使该弱引用指向被赋值的对象,该对象也有可能被回收。

unsafe_unretained:这个指示符与weak指示符基本类似,对于只被unsafe_unretained指针指向的对象,该对象也有可能被回收。与weak指针不同的是,当unsafe_unretained指针所引用的对象被回收后,unsafe_unretained指针不会被赋值为nil。

在启动ARC机制时,使用strong、weak指示符将十分方便,如果程序不希望该属性引用的对象被回收,那就应该使用strong指示符,如果程序需要保证性能,避免内存溢出,则可以使用weak指示符。使用weak指示符时需要注意,当程序通过该weak属性来访问被引用的对象时,该对象可能已经被回收了,对于声明为weak的指针,指针指向的地址一旦被释放,这些指针都将被赋值为nil,这样就能有效的防止悬空指针,避免程序的内存溢出。

你可能感兴趣的:(关于object-C中的ARC机制)