我目前正在研究Windows 7的内存检查工具,MS Visual Studio C ++。对于免费或有可用演示的工具,我想运行一个特殊测试:运行一个包含尽可能多的不同内存错误的简单应用程序,这样我就可以检查该工具可以检测到多少个。
所以我想问一下C ++中是否有适用于此类应用的源代码。
注意:
- 我用Google搜索了这个东西,但我能找到的只是关于内存检查工具的问题和网站。
- 当然我可以写这样的应用程序(如果没有这样的代码,我会这样做),但我知道我可能会忘记某些错误。例如,我甚至没有考虑检查memcpy的参数是否重叠(这是一个错误 - 改为使用memmove,或修改代码),直到valgrind在我的个人项目中找到它(在这种情况下,我将数组复制到多个位置,我忘了(在循环中)省略第一个(源)数组)。我相信还有更多我从未想过的错误类型。
- 我不能使用valgrind,因为它必须是Windows MS Visual C ++应用程序,我无法改变这个决定,valgrind under Wine看起来太复杂,所以我可能无法说服我的同事使用它解。而且它甚至不确定Wine会运行我们的应用......