@synthesize bar = __bar有两个前导下划线?

Auf*_*ind 1 syntax objective-c

我了解到,(至少在大多数情况下)以这种方式合成Objective-C中的属性是一种很好的编程风格:

@synthesite foo = _foo;
Run Code Online (Sandbox Code Playgroud)

今天我遇到了这条线

@synthesite managedObjectContext = __managedObjectContext;
Run Code Online (Sandbox Code Playgroud)

AppDelegate.m由Xcode自动生成的文件中.

一个两个主要下划线之间的主要区别是什么?

Ole*_*ann 5

没有区别.这只是个人偏好的问题(就像在ivar中添加下划线一样;许多人不喜欢它).

  • 我会说有一个区别,因为[C标准](http://stackoverflow.com/a/9918620/418715)说双下划线是**保留**. (4认同)