QT MSVC2013/ vs2013 C2440: “初始化”: 无法从“initializer-list”转换为“***” 错误

我是从此处得到答案的:https://www.devbean.net/2016/08/qt-creator-source-study-04/ 第一个评论 感谢前辈

错误信息

3> error C2440: “初始化”: 无法从“initializer-list”转换为“QVector<QPair<QString,QString>>”
3>          无构造函数可以接受源类型,或构造函数重载决策不明确
3> error C2440: “初始化”: 无法从“initializer-list”转换为“QVector<T>”
3>          with
3>          [
3>              T=QString
3>          ]
3>          无构造函数可以接受源类型,或构造函数重载决策不明确
注意,Windows下可能不容易编译通过,因为默认情况下,QVector没有打开接收initialize-list参数的构造函数。
需要在合适的pri文件或者$$QTCREATOR_SOURCES/qtcreator.pri中添加这几行

在pro文件中添加下面的配置

windows {
     DEFINES *= Q_COMPILER_INITIALIZER_LISTS
}

你可能感兴趣的:(QT)