在可视工作室

时间:2018-03-09 03:50:27

标签: c++ visual-studio g++ fbx

我尝试使用可视工作室构建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 ++编写的,因此无法链接)。

这段代码甚至在做什么?创建模板并将其作为值返回?

我从函数中删除了template关键字,它在visual studio中开始编译(并且g ++开始给出错误),这会改变结果吗?

这个错误可能是因为我使用视觉工作室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

安装了库

1 个答案:

答案 0 :(得分:1)

我刚遇到同样的错误。解决方案是在Configuration Properties / C / C ++ / Language中将Conformance模式切换为NO。我不确定这是否会导致任何问题,但它现在完成了这项工作。