QT与MSVC2015会触发多个编译错误

时间:2016-05-31 10:15:16

标签: c++ qt visual-studio-2015

尝试将我们的项目从MSVC2013上的Qt5.6更新到MSVC2015上的Qt5.6,我得到了无穷无尽的错误列表:

  • C2059
  • C2143
  • C2447
  • C2059

所有这些似乎与类型的线相关:

Q_DECLARE_SHARED( WhateverHere )

我们在多台计算机上进行了新安装,但所有计算机都存在同样的问题。

问题是:这些错误的原因是什么?这个问题的解决方案是什么?

1 个答案:

答案 0 :(得分:2)

编辑:

经过一些进一步的研究,似乎我有一些兼容性代码,如:

#ifdef _MSVC_DEV
#define noexcept throw() //not exactly the same
#endif

由于MSVC2015现在包含noexcept,此宏无效。这不会在那里显示正确的错误,而是在编译器中触发一些奇怪的状态,然后在Qt代码中抛出错误。