Подчеркивать перед именем свойства в установщике
Я написал метод сеттера -
- (void)setMyProp:(MyProp *)myProp{
_myProp = myProp;
}
Как подчеркивание ставится перед тем, как имя свойства работает? Я знаю, что этот вопрос был задан, но они о настройке пользователем имени свойства _myProp, по некоторым соглашениям. Я не синтезирую и не изменяю имя свойства. Как работает это подчеркивание?
1 ответ
Если вы используете последнюю версию LLVM, то компилятор создаст для вас @synthesize с синтаксисом:
@synthesize myProp=_myProp;
Поэтому вы можете использовать _myprop, даже если вы не синтезировали явно.
* SideNote: _myProp
позволяет получить доступ к собственности напрямую, в то время как self.myProp
вызовет аксессор. Всегда используйте self.myProp