C2061:语法错误:qtypetraits.h 中的标识符“L”

Posted

技术标签:

【中文标题】C2061:语法错误:qtypetraits.h 中的标识符“L”【英文标题】:C2061: syntax error : identifier 'L' in qtypetraits.h 【发布时间】:2016-05-13 09:23:58 【问题描述】:

这已经花费了我相当长的时间,所以in case 其他任何人都有这个问题,这里是:

我有一个使用 Visual Studio 2013 和 CPP Rest SDK 的 C++ 项目。现在我们开始使用 Qt(5.6 版),所以我在代码中添加了 Qt 对象。

我不断收到此错误消息:

C:\Qt\Qt5.6.0\5.6\msvc2013_64\include\QtCore/qtypetraits.h(523): warning C4003: not enough actual parameters for macro 'U'
C:\Qt\Qt5.6.0\5.6\msvc2013_64\include\QtCore/qtypetraits.h(523): warning C4003: not enough actual parameters for macro '_XPLATSTR'
C:\Qt\Qt5.6.0\5.6\msvc2013_64\include\QtCore/qtypetraits.h(523): error C2061: syntax error : identifier 'L'
          C:\Qt\Qt5.6.0\5.6\msvc2013_64\include\QtCore/qtypetraits.h(527) : see reference to class template instantiation 'QtPrivate::is_default_constructible<T>' being compiled

【问题讨论】:

【参考方案1】:

这不是 Qt 的错。它是 CPP 休息 SDK。它是 defines a macro U,很高兴在 qtypetraits.h 中替换为 U 模板参数。

当我在 C++ 预处理器定义中定义 _TURN_OFF_PLATFORM_STRING 时,错误消失了。

【讨论】:

以上是关于C2061:语法错误:qtypetraits.h 中的标识符“L”的主要内容,如果未能解决你的问题,请参考以下文章

RapidJson:错误 C2061:语法错误:标识符“stack_”

error C2061: 语法错误: 标识符“openmode”

使用Opencv2遇到error C2061: 语法错误: 标识符dest

error C2061: 语法错误 : 标识符 "newvalue1"

调用opencv时,使用Egien工具出现“error C2061: 语法错误: 标识符“Matrix””和“error C2653: “Eigen”:不是类或命名空间名称”该如何解决?

在 c 中为链表创建结构时出现错误 C2061