使用qtcreator14.0.1 qt版本5.15.2
安装新版qt的过程中,出现这个问题:
5.15.2\msvc2015_64\include\QtCore\qobjectdefs.h:586: : “QMetaObject::SuperData::operator const QMetaObject *”: 调用不会生成常数表达式
5.15.2\msvc2015_64\include\QtGui\qcolor.h:70: error: C2661: “QColor::CT::CT”: 没有重载函数接受 5 个参数
原因是kit配置为vs2015的C++编译器,该编译器能完整支持的C++语言版本是C++11,而qt5.15.2使用的C++语言版本高于C++11(这由qt出版方决定的,qt出版方可能使用了最新版的支持更高C++语言版本的编译器进行工作,而最新的C++语言特性在仅支持低C++语言版本的C++编译器上则呈现为错误)。解决方案有两个:
一、使用比较低版本的qt ;
二、使用新版的C++编译器,比如vs2017 vs2019 vs2022所对应的C++编译器。