2013-03-26 47 views

回答

10

第一個是實例變量。

第二個屬性。

實例變量作爲類的聲明(接口)的一部分被大量棄用,但在類的內部使用的實例變量可以在擴展或@implementation中聲明。

屬性聲明API(setter/getter)和所使用的內存管理模型。默認情況下,現代編譯器會自動合成實例變量以支持屬性。

1

上面這個不是屬性,而只是一個實例變量。 我的意見在這裏:

  1. 使用最新的Xcode。
  2. 不要寫實例變量:@interface MyObject : NSObject { NSString *title; }
  3. 使用@property而已,而無需顯式地@synthesize它, 的Xcode會隱@synthesize title = _title;其中 _title是實例變量來支持物業self.title

這是一種很好的編碼風格,我認爲。