我知道self.xxx
和_xxx
之間的差異,但我不明白self->_xxx = yyy
和_xxx = yyy
在OC,就是_xxx與自我之間的區別 - > _ XXX
之間的區別是它只是寫作的問題在ObjC和C?
我知道self.xxx
和_xxx
之間的差異,但我不明白self->_xxx = yyy
和_xxx = yyy
在OC,就是_xxx與自我之間的區別 - > _ XXX
之間的區別是它只是寫作的問題在ObjC和C?
除了@iosdude答案:
「 當訪問一個實例變量存在所得編譯代碼方面self->_ivar
和_ivar
之間沒有差別 」
解引用一個的Ivar ->
可以是有用「weakStrongDance」Example 要取消引用weakSelf
的iVar而非self
iVar
的位置。
當訪問一個ivar時,就結果編譯代碼而言,self->_ivar
和_ivar
之間沒有區別。
只有用例我能想到它的關鍵在於如果在同一範圍內有另一個具有相同名稱的本地或全局變量,並且您想使用ivar。
即使我有另一個本地或全球變量在同一範圍內具有相同的名稱但Xcode應該能夠給我一個錯誤..... – Graliet
@Graliet默認Xcode只會在這種情況下觸發警告,除非您設置標誌將警告視爲錯誤。 – ColdSteel