2012-06-08 3 views
2

Иногда я вижуКогда мы используем «->» в Objective-C?

self->someData = d; 

в коде Objective-C. Может ли кто-нибудь объяснить, когда это используется?

+1

Вы можете попробовать найти ответ здесь: http://stackoverflow.com/questions/9072688/dot-operator-and-arrow-operator-use-in-c-vs-objective-c – Kuba

+0

ах, если вы ищете " arrow operator ", а затем проще ... на iBooks или Preview на Mac Я не могу найти' -> ' –

ответ

5

Чтобы получить доступ к переменной экземпляра, которая не указана в качестве свойства.

3

Этот синтаксис может использоваться для прямого доступа к переменным публичного экземпляра объекта. (Это не работает для частных переменных.) Вероятно, вы должны создать свойство и использовать его вместо этого или использовать кодировку с ключом.

+1

и верно ли, что внутри класса эта нотация может обращаться к приватным и защищенным переменным экземпляра? Кажется, что некоторые люди также используют 'self-> someData', а не просто' someData', чтобы сигнализировать себе, что это переменная экземпляра в любых методах экземпляра. –

+1

Он работает для частных переменных экземпляра. 'someOtherObject-> privateIVar', вероятно, не будет работать, но он всегда будет работать, если левая сторона' self'. – JeremyP

Смежные вопросы