註解雖痛苦但對可讀性至關重要。**最好的程式碼即文件**——清晰的型別/變數命名勝過解釋模糊命名的註解。註解是寫給下一個讀的人(也可能是未來的你)。
// 或 /* */ 統一即可// 較常見,專案內保持一致。
.h 述類別功能與用法;.cc 述實作細節/演算法。避免單純複製註解導致脫節。// 迭代 GargantuanTable 內容。用法範例:
// GargantuanTable_Iterator* iter = table->NewIterator();
// for (iter->Seek("foo"); !iter->done(); iter->Next())
// process(iter->key(), iter->value());
// delete iter;
class GargantuanTable_Iterator { ... };
多執行緒存取類別**必須**文件化同步前提。
說明實作技巧、步驟、理由(如為何前半段加鎖後半段不需)。**勿從宣告處複製註解**。
-1 代表未知)。const int kNumTestCases = 6; // 迴歸測試總案例數NULL、true/false、魔術數字時必須註解或用常數:CalculateSomething(val, 10, false, NULL); // 差CalculateSomething(val, kDefaultBase, kNotFirstCall, nullptr); // 好禁忌:自然語言翻譯程式碼(假設讀者 C++ 比你強)。
完整句子、正確標點、一致風格。易讀的註解勝過爛註解。
// TODO(kl@gmail.com): 這裡應用 * 串接運算子
// TODO(Zeke) 2025-12-31: 改用關聯式存儲
// TODO: 當所有客戶端支援 XML 時移除此代碼
統一 TODO 大寫格式利於搜尋追蹤。