在我的代码有值得用一个常量替换开关中的参数吗?
switch (cd->op)
{
...
}
,我想知道我是否应该做
CalcWizConsts::eqOps thisOp = cd->op;
switch (thisOp)
{
...
}
在我的代码有值得用一个常量替换开关中的参数吗?
switch (cd->op)
{
...
}
,我想知道我是否应该做
CalcWizConsts::eqOps thisOp = cd->op;
switch (thisOp)
{
...
}
至switch
的参数将只计算一次,所以没有必要将其存储在一个临时第一。没有性能差异,您也不必担心要更改case
子句中的某个子句的值。我能想到的首先分配给变量的唯一原因是为了使代码更具可读性,如果表达式冗长。
将其分配给本地也可以给它一个本地有意义的名称,使代码更自我评论。 –
它也可以使它*少*可读。就像这里的情况一样,'thisOp'不如原来的'cd-> op'。 –
什么类型是op?制作一个局部变量不会使得一个常量。 – griotspeak
当真的不需要时,为什么要在范围中注入另一个标识符名称? –
您标记了“优化”。如果你认为这种改变会加速你的代码,那么你就是在浪费你的时间。不成熟的优化是万恶之源。甚至不要考虑这样做,直到它成为一个问题,几乎肯定不会。 –