我很清楚,可能不会有“C++ 中最难发现的错误”,但我仍然对其他人能想到/可能已经遇到的东西感兴趣。
这个问题的想法是在与朋友的讨论中产生的。我们同意,通过故意在您提交的源代码中包含错误来破坏 cpp 项目必须相当简单......但我们能想到的最好的事情是使用未初始化的变量(导致运行时的随机分段错误) . 我敢肯定有更好的方法...?!
错误代码的通缉特征:
- 乍一看必须像有效代码
- 不能停止编译代码(太明显了)
- 如果可能,错误应该看起来可能只是一个错误(应该找到它)
- 错误必须严重到足以阻止软件发布(例如随机段错误、代码逻辑故障等)
尽管如此,虽然它必须引人注目,但在提交代码后它不应该是显而易见的......好吧,你明白了。
别担心,我们的考虑纯粹是理论上的(我们不打算破坏任何项目)。我们只是认为这是一个很好的思想实验,可以与他人分享:-)
简而言之:
破坏在差异提交(如 git)中可能被忽视但最终会阻止软件发布的源代码的最微妙方法是什么?