有時,當一個變量爲一個數組或列表的對象集合時,它很容易將變量命名爲複數。這是好的,還是我們應該始終堅持變量的單數名稱?作爲一個例子汽車的集合可以稱爲「汽車」或「汽車」我們應該避免變量的複數名稱嗎?
考慮另一個例子:
vector<string> students; // it is named as students rather singular student
students.push_back("Mark");
students.push_back("Steve");
// lets say we are using index to retrieve it, it does look
// a little clumsy
string current_student = students[0];
或者我們可以定義容器對象爲奇象下面,但它看起來像代表一個單一的對象,而不是收集學生?它確實使得索引看起來更好。
vector<string> student;
另一種選擇,我個人喜歡的是這樣的:
vector<string> student_list;
我追加「_list」(或者可能是駱駝符號)來收集變量名(不考慮如果向量或列表或地圖)。這種方式的名稱是單數,但它將自己標識爲對象的集合。
哪一種更好的方式或約定,以上更可讀?應該複數名稱是絕對避免?
也認爲另一個簡單的例子,以及,說我們正在進行一個實驗,我們記錄每天的溫度在不同的時間間隔的100倍,所以我們:
float temperatures[100]; // or temperature[100]? or temperature_list[100]?
甚至可能是不同的,如:
float temperature_data[100]?
愚蠢的挑剔:'溫度_數據'是'temperature_datum'的複數:P –
如果有人真的使用了「數據」這個詞,我會同意你的意見。 :)這些日子裏,「數據」是一個羣體名詞,至少和複數一樣被認爲是單數。 – cHao
這是否也適用於命名空間名稱?那麼,包含幾個策略類的命名空間應該命名爲'policies'而不是'policy'? – AlwaysLearning