2012-02-10 32 views
0

我的應用程序必須支持的iOS 3.1.2如何在iOS的申報弱引用3.1.2

但它看起來像__weak,__block只有__unsafe_unretained是針對iOS的新版本

能有人告訴我如何在iOS 3.1.2中聲明弱引用的示例?

我應該做的:

@interface foo 
{ 
    SomeType* _bar 
} 

@property (nonatomic, assign) Sometype* bar; 
@end 

@implementation 
@synthesize bar = _bar; 
@end 

回答

0

分配,當你使用它,是一樣的unsafe_unretained。如你所述,你不能在iOS5之前聲明一些東西(它爲你清理了一個引用)。

所以基本上,當你使用一個賦值引用時,只要注意清除任何賦值引用,當對象被設置爲消失。

此時在支持iOS 3.x中沒有任何價值。你應該說服你正在努力的人離開它,如果只使用ARC。這會造成很多內存問題和潛在的崩潰消失。

+0

目前我需要使用iOS 3.x.你能否在對象被提前離開時解釋「清除任何賦值引用」的含義?你的意思是把它設置爲零? – xcoder 2012-02-10 08:27:31

+0

是的,只需將參考設置爲零,以便您不會意外使用已釋放的內存。 – 2012-02-10 21:25:27

+0

感謝您的回覆。 – xcoder 2012-02-11 04:28:12