首页 > 解决方案 > 内存泄漏线

问题描述

我已经看到了很多关于内存泄漏的问题,但是我需要问的问题非常简单而且我还很新,所以很多解释都让我感到困惑(所以请原谅我问了这个基本问题)。我有这行代码供我使用:

#如果定义(调试)| 已定义(_DEBUG)_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_OF | CRTDBG_LEAK_CHECK_OF);但是,在带有 _CRTSetDbgFlag 的第二行中,它表示使用了未声明的标识符:使用未声明的标识符“_CRTDBG_ALLOC_MEM_OF”和使用未声明的标识符“CRTDBG_LEAK_CHECK_OF”#endif

我不确定这意味着什么,或者我可能需要安排代码来表达什么。任何简单的解释或示例都值得赞赏。*注意,这是在一个主函数中,到目前为止是主函数中唯一的东西。另外,由于我使用的是 Mac 电脑,我不确定这是否是我不适合的原因。

标签: c++xcodemacosmemory-leaks

解决方案


这不是一行代码;它应该是 3:

#if defined(DEBUG) | defined (_DEBUG)
_CrtSetDbgFlag (_CRTDBG_ALLOC_MEM_OF | CRTDBG_LEAK_CHECK_OF);
#endif

编辑:这个问题在我回答后更改了几次,在当前状态下,问题是缺少包含文件:

#include <crtdbg.h>

推荐阅读