在 Google 的Objective-C 风格指南中,很多人都遵循,Google 说
类成员变量有尾随下划线
为什么?这样做有什么好的理由吗?我发现苹果通常在开始下划线时命名一个 ivar。
我更喜欢尾随下划线,因为如果我有:
int test_;
我可以输入“t”,它会立即出现在代码完成中。
和
int _test;
我必须输入“_t”才能进入代码完成中的 T。
这是否属实,不确定,但这是我说服自己的。
Core Data 的重度用户也会注意到 Core Data 属性不能以非字母字符开头。如果您想在您的应用程序和各种项目中一致地命名 ivars,这是使用下划线附加而不是预先添加 ivars 的另一个原因。
如果你没有经常使用 Core Data,或者你没有强迫症倾向,命名约定的一致性,那么最适合你的可能就是正确的答案。
这可能是他们的C++ style guide的继承。在 C++ 中,前导下划线是保留的。
他们对objective-c ivars 的命名约定与c++ 私有成员变量一致。
这只是他们喜欢的风格。下划线,无论是前缀还是后缀,都表示它是私有 ivar,而不是属性或公共 ivar。