库之间的名称冲突

时间:2014-05-10 22:51:03

标签: c++ windows namespaces conflict allegro

我想在我的项目中包含两个库:<allegro.h><windows.h>,但我无法编译它。 IDE显示此类错误:

error C2371: 'BITMAP' : redefinition; different basic types
error C2731: 'WinMain' : function cannot be overloaded
error C2733: second C linkage of overloaded function 'WinMain' not allowed

据我所知,两个库都有一个名为BITMAP的结构,因此它们存在冲突。我该怎么做才能用这些库编译我的项目?我考虑过命名空间,但我无法成功使用它。

2 个答案:

答案 0 :(得分:0)

由allegro提供的特殊修复。包括&#34; winalleg.h&#34; (而不是&#34; Windows.h&#34;)&#34; allegro.h&#34;。

答案 1 :(得分:0)

使用#include <winalleg.h>代替#include <windows.h>建议进行快速网络搜索。