2012-05-15 122 views
3

如果「assign」是默認值,我可以將其保留爲空,並將它賦值?@property assign

@property BOOL sample; 

如果我定義了它的原子性,然後將其留爲空白,該怎麼辦?

@property (nonatomic) BOOL sample; 
+1

XCode 4.3 {strong}是默認設置,它已針對ARC一致性進行了更改。看到這裏http://stackoverflow.com/questions/9773604/property-definitions-with-arc-is-strong-default-now – Justin

+0

但是,它給我的原始「強」?這是不可能的。 –

+1

沒有所有權來源合成的可保留對象指針類型的屬性具有與其關聯的實例變量的所有權(如果它已存在;否則,[開始使用Apple 3.1,LLVM 3.1]其所有權隱含地強大。在此次修訂之前,合成這種財產的行爲是不健全的。 – Justin

回答

6

是的,如果沒有特別指定,則使用默認值。但是,在屬性定義中明確是一個好習慣。第三方更容易理解正在發生的事情和/或知道應該怎麼做。此外,實施細節可能在未來發生變化。

+0

在XCode 4.3中,{strong}是屬性的默認值。 – Justin

3

是的,你是對的:

@property BOOL sample; 

是等價的:

@property (atomic, assign) BOOL sample; 

但當然,原子是不存在,所以不要使用它:)

屬性