我正在尝试将 ChaiScript 与 SFML 一起用于我的游戏引擎。所有 SFML 的东西都可以正常工作,直到我包含chaiscript.hpp
在我的游戏对象头文件中。我的 GameObject 头文件看起来有点像这样:
#include <a bunch of standard libraries>
#include "imgui.h"
struct Object {
std::string name;
void init();
void update();
void render();
*some template functions*
};
当我尝试包含chaiscript.hpp
在上述文件中时会出现问题。我从 SFML 的 Rect.inl 文件中得到一个重复错误(准确地说是 8 个)'(': illegal token on right side of '::'
,然后没有其他错误。当我不包含chaiscript.hpp
时,或者当我包含chaiscript.hpp
在对象 cpp 文件中时,它编译得很好。我之前在 SDL 中使用过 ChaiScript,从来没有遇到过这样的问题,那么它是不是 SFML 宏搞砸了?我怎样才能避免这个问题?