简体   繁体   English

带有MSVC2015的QT触发多个编译错误

[英]QT with MSVC2015 trigger multiple compilation errors

Trying to update our project from Qt5.6 on MSVC2013 to Qt5.6 on MSVC2015, I got an endless list of error: 尝试将我们的项目从MSVC2013上的Qt5.6更新到MSVC2015上的Qt5.6,我得到了很多错误:

  • C2059 C2059
  • C2143 C2143
  • C2447 C2447
  • C2059 C2059

All of them seem related to lines of type: 它们似乎都与类型的行有关:

Q_DECLARE_SHARED( WhateverHere )

We make a new install on several machines and all of them has the same issue. 我们在多台计算机上进行了新安装,并且所有计算机都有相同的问题。

The question is: What is the reason of those errors? 问题是:这些错误的原因是什么? What is the solution to this issue? 这个问题有什么解决方案?

EDITED: 编辑:

After some further research, it seem that I had some compatibility code like: 经过进一步研究,似乎我有一些兼容性代码,例如:

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

As MSVC2015 include now noexcept , this macro become invalid. 由于MSVC2015现在包括noexcept ,因此此宏无效。 Instead of showing a correct error there, this trigger some strange state in the compiler which then throw errors in Qt code. 此处没有显示正确的错误,而是在编译器中触发了一些奇怪的状态,然后在Qt代码中引发错误。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM