C++小知识:复制粘贴代码千万要小心

时间:2021-09-02 04:25:01

错误代码:

?
1
2
3
4
5
6
7
8
sampleCount VoiceKey::OnBackward (....) {
 ...
 int atrend = sgn(buffer[samplesleft - 2]-
          buffer[samplesleft - 1]);            
 int ztrend = sgn(buffer[samplesleft - WindowSizeInt-2]-
          buffer[samplesleft - WindowSizeInt-2]);
 ...
}

解释:

buffer[samplesleft – WindowSizeInt-2]” 该表达式是减去其自身。这个错误是由于复制粘贴代码引起的,该程序员复制了一行代码,却忘记把 2 改为 1 了。

正确的代码:

?
1
2
int ztrend = sgn(buffer[samplesleft - WindowSizeInt-2]-
         buffer[samplesleft - WindowSizeInt-1]);

建议:

复制粘贴代码时千万要小心。

不建议大家拒绝使用复制粘贴的方法,毕竟它确实很有用,使用起来太方便了。但用的时候千万要小心,不要着急。

俗话说有备无患。记住复制粘贴代码可能会导致大量的错误。看看这些通过 V501 诊断发现 bug 的例子中,有一半的错误都是由于使用复制粘贴方法导致的,另外一半是因为拼写错误。当然关于这个话题,我们另一篇文章专门写到它。

当你复制代码并进行修改的时候,时刻要记得检查你是否完全做对了!千万别偷懒!

另外,我们还会讨论更多关于复制粘贴的话题,我打赌你还没意识到这个问题影响的范围有多广,但是我保证会让你印象深刻。C++小知识:复制粘贴代码千万要小心

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

原文链接:https://blog.csdn.net/weixin_41986518/article/details/86473736