2012-01-09 42 views
1

在頭文件中,ivar結構有三個成員: -伊娃包含什麼?

名稱,類型和偏移量。

我猜的名字是存儲變量的名稱。

偏移量用於存儲從結構起始位置的字節數。

請告訴我,如果我對這兩個是正確的?任何人都可以解釋我是什麼類型的? 它是數據類型還是範圍,告訴它是公共的,私人的還是保護的。

回答

1

這是一個包含實例變量類型編碼的C字符串。請參閱Objective-C Runtime編程指南的本地副本中的Type Encodings

你不應該直接訪問Ivar領域,不過,因爲Ivar不透明型。爲此,最好使用ivar_getTypeEncoding()

+0

那麼關於變量範圍的信息如何被存儲,如公共,私人和受保護?順便說一句 – 2012-01-09 09:58:36

+0

是我正確的關於其他兩個? – 2012-01-09 10:01:07

+1

範圍說明符是一個編譯器指令。據我所知,它不會影響運行時,它只是在編譯過程中產生錯誤。無論範圍指令如何,您都可以在運行時訪問任何ivars。是的,你對伊娃的名字和抵消是正確的。 – Costique 2012-01-09 10:05:04