很难为这个问题想出一个合适的标题。反正...
我目前正在为SDL中的游戏开发GUI。当一个奇怪的错误出现时,我已经完成了软件绘图,并且正在开始使用它的 OpenGL 部分。我包含了“SDL/SDL_opengl.h”头文件并编译。它抛出“错误C2039:'DrawTextW':不是'GameLib::FontHandler'的成员”,这是一个足够简单的错误,但我没有任何称为DrawTextW的东西,只有FontHandler::DrawText。我搜索 DrawTextW 并在标题“WinUser.h”的#define 调用中找到它!
//WinUser.h
#define DrawText DrawTextW
显然它用 DrawTextW 替换了我的 DrawText!我怎样才能阻止它像那样溢出到我的代码中?
更改我自己的函数名称是一件小事,但是像这样的命名冲突似乎很危险,我真的很想知道如何一起避免它们。
干杯!