如何解决内存泄漏线
我已经看到了很多有关内存泄漏的问题,但是我要问的很简单,而且我还很新,所以很多解释使我感到困惑(所以请原谅我提出这个基本问题)。我有这行代码可供我使用:
#if defined(DEBUG)|已定义(_DEBUG) _CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_OF | CRTDBG_LEAK_CHECK_OF); 但是,在_CRTSetDbgFlag的第二行中,它表示使用了未声明的标识符:使用了未声明的标识符'_CRTDBG_ALLOC_MEM_OF'和使用了未声明的标识符'CRTDBG_LEAK_CHECK_OF' #endif
我不确定这意味着什么或我可能需要安排代码来说什么。任何简单的解释或示例都将受到赞赏。 *请注意,这是在主要功能中,到目前为止是主要功能中唯一的功能。另外,当我使用Mac电脑时,我不确定这是否对我不起作用。
解决方法
这不是一行代码;应该是3:
#if defined(DEBUG) | defined (_DEBUG)
_CrtSetDbgFlag (_CRTDBG_ALLOC_MEM_OF | CRTDBG_LEAK_CHECK_OF);
#endif
编辑:此问题在我回答后已更改了好几次,在当前状态下,该问题是缺少的包含文件:
#include <crtdbg.h>
,
您可能缺少必需的标题。所提到的标识符应在<crtdbg.h>
中定义,您需要通过以下方式将其包括在内:
#include <crtdbg.h>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。