如果您有来自同一类型的两个变量,这些变量具有相似的滚动,例如,由两个数组组成的合并函数: IntArray merge(IntArray array1,IntArray array2);
你认为给变量命名的最佳方法是什么?var1,var2还是firstVar,secondVar?或者换一种方式?如果你能表达你的观点,我很高兴听到你背后的理性,尤其是那些不容易出错的问题。
提前谢谢。
发布于 2012-08-10 09:04:32
对于C/C++,我认为最好采用以下方式:
IntArray merge(IntArray a, IntArray b);
因为它简单、简短,并且避免在变量名中使用整数。
或“运算符表”:
IntArray merge(IntArray lhs, IntArray rhs);
(左面及右面)
(类似:
IntArray operator+(IntArray lhs, IntArray rhs);
)
“数字”变体和camelCase更像ECMAScript而不是C,但它主要是使用C/C++并使用那样命名的人创建的“标准”(参见C++标准库中的plus模板中的一个例子)。
但你不可能得到太多的理由,因为这只是一个品味的问题。只要变量同样重要(即merge(a, b) == merge(b, a)
),这就是它们从实现代码中引用的方式。
发布于 2012-07-31 10:16:22
为了清晰起见,我使用变量的用途作为名称,而不是数字号。它立刻告诉我,变量数是有限的。例如:
function predicate(int subject, int object)
function merge_array(array firstArray, array secondArray)
使用(array1, array2)
听起来不对,因为好像有array3,array4,……虽然我们知道变量/参数计数是固定的。
发布于 2012-08-10 08:40:24
函数的参数应该总是谈论它们是谁,以及它们应该用于什么。如果这两个数组之间没有区别(例如,作为源和目标),也许您应该考虑传递一个数组列表(名为arraysToMerge或类似的东西)。变量的名称必须始终解释变量的用途。因为代码是(或者至少应该是)我们真正的文档。
https://stackoverflow.com/questions/11730137
复制相似问题