在视觉工作室中构建 fbxsdk 标头时编译错误
Compile error when building fbxsdk headers in visual studios
我尝试使用Visual Studios构建2015和2018版本的fbxsdk标头,但得到错误:
C:\Program Files\Autodesk\fbx\fbx SDK \2018.0\include\fbxsdk\core\fbxproperty.h(1161):错误 C2903:"GetPropertyValue":符号既不是类模板也不是函数模板
错误发生在这段代码中:
T EvaluateValue(const FbxTime& pTime=FBXSDK_TIME_INFINITE, bool pForceEval=false)
{
return GetAnimationEvaluator()-> template GetPropertyValue<T>(*this, pTime, pForceEval);
}
它位于模板类中,标头的 Linux 版本是相等的,但不会产生错误,我什至尝试了 mingw g++ 并编译没有错误(但由于 dll 不是使用 g++ 制作的,因此无法链接)。
那段代码到底在做什么?创建模板并将其作为值返回?
我从函数中删除了模板关键字,它开始在可视化工作室中编译(并且 g++ 开始给出错误),这会改变结果吗?
此错误可能是因为我使用了 visual studios 2017 而不是 fbxsdk 库推荐的 2015 而导致的吗?除此之外,我做了他们在这里推荐的一切:https://help.autodesk.com/view/FBX/2018/ENU/?guid=FBX_Developer_Help_getting_started_installing_and_configuring_configuring_the_fbx_sdk_for_wind_html
我从以下位置安装了库: http://usa.autodesk.com/adsk/servlet/pc/item?siteID=123112&id=26416244
我刚刚遇到了同样的错误。解决方案是在配置属性/C/C++/语言中将一致性模式切换到NO。我不确定这是否会导致任何问题,但它现在完成了这项工作。
- std::is_base_of表示ctor编译错误
- Qt5:使用QCommandLineParser类时出现奇怪的编译错误
- 如何修复sfml c++代码编译错误
- 使用 MATLAB 编码器生成C++代码:编译错误"undefined reference to `rgb2gray_tbb_real64'"
- 使用外部SDK工具链文件在VisualStudio上生成项目编译错误
- vscode下的Arduino代码出现意外编译错误
- 第三方 API 中的编译错误 - Visual Studio
- std::cout输出int时出现编译错误
- 奇怪的代码抛出编译错误模板< J,int aSize=10> C2143:语法错误:在"<"之前缺少";"
- 提升图广度优先搜索前置编译错误
- C++ 中的编译错误:未定义对"主"的引用 collect2:错误:ld 返回 1 个退出状态
- 使用带有 ref 参数的成员函数创建线程时出现编译错误
- 我在C++中遇到了这个奇怪的编译错误
- 在C++中使用 Catch 测试框架编译错误"error: expected ';' at end of declaration list"
- 使用 std::enable_if 限制派生类的模板参数时出现编译错误
- 现代OpenGL和GLEW Libraray的编译错误
- C++ 编译错误:意外的类型名称"字符串":预期的表达式
- C ++程序编译错误,找不到/访问文件
- 使用直接大括号初始化时,C++ 编译错误"声明末尾的预期";"
- 为什么传递非静态成员函数会导致编译错误?