我已經聲明過的屬性:的XCode 4.5.2錯誤未使用的變量時,使用屬性
@property(弱,非原子)IBOutlet中的UILabel * statusLabel;
然後我像這樣使用它: statusLabel.text = plainText; 或 [statusLabel setText plainText];
在這兩種情況下,我得到的編譯器錯誤。「使用未聲明的標識符‘statusLabel’的;您的意思是否 _statusLabel」」其實,當我_statusLabel取代statusLabel,編譯器是幸福
我完全不解。 1.是,XCode的自動伊娃綜合_statusLabel,但我試圖使用屬性,而不是一個實例變量,爲什麼財產是不可見的?
使用。(點)是錯誤的,因爲我明白,點是屬性。爲什麼呢?
如果我手動指定合成不帶下劃線的var,代碼將起作用,但同樣,這意味着編譯器可以與變量一起使用,而不是使用屬性。
所以,這個組合的作品: @synthesize statusLabel = statusLabel; ... [statusLabel setText:plainText];這個不是: @synthesize statusLabel = _statusLabel; ... [statusLabel setText:plainText];
有人解釋嗎?非常感謝。 Serge