原文地址:
http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Displaying_Hidden_Details_in_this_Guide#Naming 谷歌的C++代码风格与网上广为流传的林锐风格有很大不同,不过正如文中所言:重要的是保持一致。它还说出了每一种风格的优缺点,这里只说几个比较有意思的。
1)关于空行:
基本原则:使一个屏幕能容纳更多的代码(显然,这是K&R风格的拥趸)
2) 关于引用参数:
所有的引用前加 const, 如下列:
void f(const Object& in, Object& out); // bad
void f(const Object& in, Object* out); // good
以上两点倒是和Qt相似,还有一个相似的地方是:尽量不要用 unsigned。
3)关于全局变量:
禁止使用类全局变量,可以使用一些内置类型的全局变量。(为了避免初始化顺序问题)。
4)不提倡的C++特性:
尽量不要使用多重继承;
尽量不要使用操作符重载;
尽量不要使用函数重载;
不要使用函数缺省参数;
不要使用异常;
不要使用RTTI;
内置的整性类型只使用int.(64位可使用int64_t, 指针兼容可使用intptr_t或ptrdiff_t).
具体的理由和更多的风格参见原文。
另外,还可以和Java风格做个对比:
http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html