例如,在下面的代碼中。什麼時候應該聲明一個實例變量而不是頭中的屬性?
@interface TUTViewController : UIViewController
{
NSTimer *timer;
}
@end
和
@interface TUTViewController : UIViewController
@property (weak, nonatomic) NSTimer *timer;
@end
在這情況下我們使用第一種方法來聲明變量?
如果要控制獲取/設置邏輯,則聲明一個屬性。與你擁有的伊娃相當的財產也不會太弱。 –
永遠不要把ivars放在.h中。 ivars應該永遠是私人的意思,他們不屬於公衆.h。如果你創建ivars,把它們放在.m文件中。 – rmaddy
我幾乎從不說。對於objC類型,總是嘗試使用屬性。如果您需要從您的實施中使用伊娃,那麼無論如何您都可以這樣做。 例如,我看到了objC類型,因爲我有使用C++引用作爲屬性的問題。 –