我在Microsoft Visual Studio Express 2013上使用Box2D,但是当我尝试创建b2World时,这是不对的。它给了我这种错误:
错误检测到' _MSC_VER':值' 1900'没有匹配的价值' 1800'在Box.obj
未解析的外部符号" void __cdecl operator delete(void *,unsigned int)" (?? 3 @ YAXPAXI @ Z)
未解析的外部符号___ std_terminate
未解析的外部符号___std_terminate
未解析的外部符号___std_terminate
未解析的外部符号__imp ____ acrt_iob_func
未解析的外部符号__imp ____ stdio_common_vfprintf
提供错误的代码行是这样的:
b2Vec2 gravity(0, -9.8);
bool doSleep = true;
b2World bbworld(gravity);
如果我评论这一行:
b2World bbworld(gravity);
没有任何反应
注意:Box是我程序中的一个类!
感谢您的帮助!
答案 0 :(得分:3)
包含此类编译器选项以解决“未解析的外部符号___std_terminate”问题:
<强> / ZC:threadSafeInit-,sizedDealloc-,implicitNoexcept - 强>
同时检查您是否删除了所有默认的C运行时库,即链接器选项: / NODEFAULTLIB