如果您有兩個相同類型的播放類似滾動的變量,例如兩個數組的合併函數: IntArray合併(IntArray array1,IntArray array2);變量命名約定 - var1,var2或firstVar,secondVar?
你認爲最好的(最易讀,最不容易出錯)方式來命名變量? var1,var2或firstVar,secondVar?或者也許是另一種方式? 如果您表達您的意見,我會很高興聽到理性的背後,特別是關於哪個更不容易出錯。
在此先感謝。
如果您有兩個相同類型的播放類似滾動的變量,例如兩個數組的合併函數: IntArray合併(IntArray array1,IntArray array2);變量命名約定 - var1,var2或firstVar,secondVar?
你認爲最好的(最易讀,最不容易出錯)方式來命名變量? var1,var2或firstVar,secondVar?或者也許是另一種方式? 如果您表達您的意見,我會很高興聽到理性的背後,特別是關於哪個更不容易出錯。
在此先感謝。
爲了清楚起見,我將變量的用途用作名稱而不是數字。它立即告訴我,變量計數是有限的。例如:
function predicate(int subject, int object)
function merge_array(array firstArray, array secondArray)
使用(array1, array2)
聽起來錯誤對我來說,因爲它看起來有ARRAY3,array4,......而我們知道的變量/參數數量是固定的。
函數的參數應該始終談論他們是誰以及他們應該用什麼。如果兩個數組之間沒有區別(例如源和目標),那麼也許應該考慮傳遞一個數組列表(名爲arraysToMerge或類似的東西)。 變量的名稱必須始終解釋變量的用途。因爲代碼是(或至少應該是)我們的真實文檔。
數組列表的缺點是它不允許調用者使用正常的調用語法,他將不得不顯式地構造列表(這也涉及複製並損害C++性能) – JohnnyW 2012-08-11 10:11:00
我可以同意談論合併數組問題,因爲它非常具體,並且有一個統一的論點順序。我試圖推廣這個問題。 專注於你的問題,我會避免名稱與數字(如array1,array2 ..),因爲他們讓你形象,可能有兩個以上。即使聽起來很奇怪,你應該找到更具體的東西。 類似於: 函數merge_array(array firstOutOfTwo,array secondOutOfTwo) – lucke84 2012-08-13 08:58:07
對於C/C++,我認爲以下將是首選:
IntArray merge(IntArray a, IntArray b);
因爲它的簡單,短期和變量名使用整數避免。
或者, '運算符形式':
IntArray merge(IntArray lhs, IntArray rhs);
(對於左手側和右側)
(相似:
IntArray operator+(IntArray lhs, IntArray rhs);
)
'numeric 「變型和駝峯更像是ECMAScript的不是C.但它主要是‘由人創造標準的’誰只是使用C/C++和使用的命名一樣,(見plus template in C++ standard library爲例)。
但你不能讓它落後太多理由,因爲它只是口味的問題。只要變量是同等重要(即merge(a, b) == merge(b, a)
),這是他們將是多麼的實現代碼簡稱。
在你的情況我會使用沿着var
和anotherVar
線的東西。
如:
IntArray merge(IntArray array, IntArray anotherArray);
變量和參數應該是不言自明的。我認爲這種情況更清楚地描述了情況。
你使用什麼編程語言? – 2012-07-30 21:58:23
C++。我雖然關於標記它,但這些問題確實似乎與語言無關。 – JohnnyW 2012-07-30 22:00:15