C++代碼風格谷歌版
谷歌的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
posted on 2008-07-01 15:24 eXile 閱讀(5592) 評論(8) 編輯 收藏 引用 所屬分類: C/C++