變數名稱 (Variable Names)
變數 (包含函式的參數) 與資料成員的名稱都用蛇形命名法(
snake_case
,也就是全部小寫,並使用底線隔開單字)。 類別的資料成員(但結構的資料成員不包括在內)還需在名稱尾端加上底線。 例如,區域變數:a_local_variable
、結構資料成員:a_struct_data_member
、類別資料成員:a_class_data_member_
。
一般變數名稱
好的:
string table_name; // 可以 - 蛇形命名法
不好的:
string tableName; // 不好 - 大小寫混合
類別資料成員
類別的資料成員(無論是靜態或非靜態)應像一般的非成員變數一樣命名,但要加上尾端底線。 唯一的例外是靜態常數類別成員,應該要以 常數的方式 命名。
class TableInfo {
public:
...
static const int kTableVersion = 3; // 可以 - 常數命名方式
...
private:
std::string table_name_; // 可以 - 尾端有底線
static Pool<TableInfo>* pool_; // 可以
};
結構資料成員
結構的資料成員(無論是靜態或非靜態)應像一般的非成員變數一樣命名。 不像類別的資料成員,它們不需加上尾端底線。
struct UrlTableProperties {
std::string name;
int num_entries;
static Pool<UrlTableProperties>* pool;
};
請參考 結構與類別章節 的討論來瞭解何時該使用結構而不是類別。