MFC中出现“_debugger_hook_dummy = 0”
时间: 2023-06-17 10:08:42 浏览: 169
MFC.zip_MFC常用函数_visual c
这个问题一般出现在使用 Visual Studio 2015 及以上版本编译 MFC 项目时。这是由于在这些版本的编译器中,引入了一个名为“VTGuard”的新特性,用于检测虚函数表(virtual function table)的一些错误。
要解决这个问题,可以在项目的属性设置中添加以下代码:
```c++
#ifndef _DEBUG
extern "C" { int _debugger_hook_dummy = 0; }
#endif
```
这个代码的作用是在 Release 模式下定义一个名为“_debugger_hook_dummy”的变量,并将其初始化为 0。这样可以绕过编译器对 VTGuard 的检测,避免出现错误。在 Debug 模式下不需要添加这段代码,因为编译器会自动定义该变量。
阅读全文