我應該更好總是寫網點是否有getter/setter?
@interface MyClass
{
NSTextField * myTextField ;
}
@property (assign) NSTextField * myTextField ;
或只是
@interface MyClass
{
NSTextField * myTextField ;
}
?
爲什麼我有理由認爲,我們應該添加@property
行:
我最近有一個程序,如果出口沒有一個getter/setter方法,這將無法正常工作。
加:我們發現當一個項目創建
@property (assign) IBOutlet NSWindow *window;
IBOutlets僅適用於屬性。很少需要在你的類的頭文件中使用iVars,或者將它放在類擴展中或@implementation中。 – 2013-03-19 16:58:31
你能澄清你的評論嗎?什麼是iVar? Plus:我總是被告知/顯示在'.h'中聲明一個類的屬性。你只是說,如果有一個@屬性,那麼我不需要在之前聲明屬性? – Colas 2013-03-19 17:01:15
@ RichardJ.RossIII,雖然我很挑剔,但你的第一句話是錯誤的。 IBOutlets可以用來裝飾一個實例變量,即使沒有對應的@屬性。這是在Objective-C 2.0之前完成的正常(唯一)方法,並且仍然有效。 100%同意你的第二句話。 – 2013-03-19 18:05:25