【发布时间】:2011-01-27 17:25:42
【问题描述】:
Lots of C++ projects 使用某种驼峰式命名约定。唯一使用 STL 命名约定的项目似乎是 boost(正在为 STL 进行大量原型设计)。我知道有些项目早于 STL,但大多数新代码库(使用 STL)都坚持骆驼命名约定。
所以我的问题是:
- 为什么没有人使用 STL 命名约定?
- 您是否建议在新项目中使用 STL 命名约定而不是驼峰式命名?
- 我看到一些项目对某些'STL type' 类(limited_stack、simplify_type)使用 STL 命名约定,而对其他所有类使用驼峰命名约定。这看起来像是将基础架构与应用程序代码分开的好方法。你会推荐这样做吗?
(我知道命名约定已经被讨论到死了。但我认为这个问题以前没有回答过。尤其是拆分命名约定的想法,在我看来,值得讨论。)
【问题讨论】:
-
这又是一个风格问题......
-
如果程序员使用 stdlib 命名约定并且@andreas 没有看到它,它发生了吗?肯定有有人使用这些约定。
-
真正的程序员使用下划线!
-
@James:我手边没有引文,但至少有一项研究表明,人们必须先习惯 camelCase,才能很好地阅读它。同一项研究表明,使用下划线不需要这样的适应期。
-
@mingos:找到它:citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.21.9043。再看一遍,我发现我对结果的记忆并不完全正确——他们删除了空格,但(显然)没有大写来分隔单词,所以它可能对驼峰式没有太多意义。至于我最初的评论,我认为任何以“真正的程序员”开头的东西都不应该太认真......
标签: c++ stl naming-conventions