每当我提出代码供专业程序员审阅时,他们倾向于指出"使用名为temp的变量是错误的"但似乎没有人知道为什么。
为什么它被认为是坏的?
答案 0 :(得分:7)
这是因为temp
暗示了变量的长寿(临时),但没有提及其内容的含义或意义。变量通常最佳命名,以反映其基本值的意图。
答案 1 :(得分:6)
temp
确实没有任何意义。一个更好的问题是:它必须吗?
在不知道上下文(如何在代码中使用?)的情况下,很难说它是什么,以及temp
是否是一个好名字。 如果您经常使用或非本地使用变量,则名称必须是描述性的。如果您在三个相邻行中使用它,例如三次,则temp
这样的名称就可以了。< / p>
void swapIntPointers(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
这个函数应该做什么(从它的名字)和它实际做了什么(从它的结构)。在这种特定情况下,我强烈首选短(并自动描述非名称)。我甚至说temp
在这里可能有点太长了;)
然而: