Cppcheck : mismatchAllocDealloc 错误

Posted

技术标签:

【中文标题】Cppcheck : mismatchAllocDealloc 错误【英文标题】:Cppcheck : mismatchAllocDealloc error 【发布时间】:2014-03-13 14:06:32 【问题描述】:

我用 cppcheck 检查了我的程序,它抱怨一些 mismatchAllocDealloc 错误。我真的不明白我做错了什么。这个错误是什么意思?

谢谢

【问题讨论】:

【参考方案1】:

我是 Cppcheck 作者。

示例代码:

p1 = malloc(10);
delete p1;  // <- should use "free(p1)"

p2 = new char[10];
free(p2);   // <- should use "delete[] p2"

【讨论】:

谢谢。顺便问一下,有没有详细解释错误代码的地方,并有一些解决它们的例子? 我们已经讨论过添加它。这将是很好的。但是没有人完成所有的工作。您在这里有一些示例:github.com/danmar/cppcheck/tree/master/samples,请随时提供更多示例

以上是关于Cppcheck : mismatchAllocDealloc 错误的主要内容,如果未能解决你的问题,请参考以下文章

CMake 中的 Cppcheck 支持

CMAKE 有条件地运行 cppcheck

cppcheck - 终止Strncpy

自定义 cppcheck 规则集

如何使用 cppcheck 忽略某些文件类型?

cppcheck 中的 SLOC