例如,我曾使用前缀下划线作为变量命名,以区分局部变量。
我碰巧看到了"Google样式指南“,发现它建议使用尾随下划线(请参阅这里),但没有详细解释原因。
我知道这是一个编码风格的问题,但我想知道使用尾下划线有什么好处吗?
发布于 2012-01-12 09:02:57
关联:关于“合成”的问题 (见答案底部的区块引号)
优点是:_var是一种针对私有用户的惯例(C99,Cocoa准则),但它非常普遍(即使在苹果模板上也是如此),以至于苹果使用双下划线__var。谷歌通过使用尾下划线来解决这个问题。
我用更多的理由更新了另一个答案。
在C++ (参见在C++标识符中使用下划线的规则是什么?)和Core属性(尝试在模型中添加一个前导下划线)中也不鼓励使用前导下划线,您将得到“名称必须以字母开头”)。 尾下划线似乎是明智的选择,但如果您喜欢其他的东西,碰撞是不可能发生的,如果它们发生了,您将收到编译器的警告。
发布于 2012-01-12 08:48:48
前缀下划线通常用于system / SDK库。因此,使用前缀下划线可能会导致超类中的变量被重写,这样的bug并不容易找到。看看系统提供的任何类,比如NSView,您会发现这一点。
发布于 2012-01-12 08:58:32
苹果公司使用单个前导下划线来表示ivars,这样它们的变量名就不会与我们的名字发生冲突。当你命名你的象牙,使用任何东西,除了一个前导下划线。
https://stackoverflow.com/questions/8832091
复制相似问题