可能重复:
How does an underscore in front of a variable in a cocoa objective-c class work?
Why rename synthesized properties in iOS with leading underscores?
我是iOS编程的绿手。
我总是在其他代码中看到这样的陈述
@synthesize textNoteOrLink = _textNoteOrLink;
无论如何,下划线的含义是什么?在这种情况下我们可以只是'textNoteOrLink'。
答案 0 :(得分:4)
是的,你可以写textNoteOrLink
。
许多开发人员在实例变量名称的开头加上下划线(@synthesizing属性实际上为该属性添加了一个ivar),以避免意外使用ivars而不是属性,绕过setter和getter。
恕我直言,这是一件好事,但如果你不喜欢它,就不要使用它,但要注意不要混淆属性和ivars。