c++ - QList 通过初始化列表初始化

标签 c++ qt

我的硬盘损坏了,我不得不重新设置一切。

问题是以前工作的代码现在抛出错误。

    QList<QColor> colors = {
    QColor(0, 255, 255, 255),
    QColor(0, 200, 255, 255),
    QColor(0, 170, 255, 255),
    QColor(0, 150, 255, 255),
    QColor(0, 130, 255, 255),
};

错误: D:\dev\est_tsd\tests\testgis.cpp:19: error: C2440: 'initializing': 无法从 'initializer-list' 转换为 'QList' 没有构造函数可以采用源类型,或者构造函数重载决策不明确

我读到 Qt 现在支持 QList 的初始化列表 (套件名称:Desktop Qt 5.3 MSVC2013 OpenGL 64bit)。我错过了什么?

帮助将不胜感激。

最佳答案

您正在使用复制初始化语义而不是直接列表初始化。您应该检查 .pro 文件中是否有:

CONFIG += c++11

然后使用:

QList<QColor> colors{
    QColor(0, 255, 255, 255),
    QColor(0, 200, 255, 255),
    QColor(0, 170, 255, 255),
    QColor(0, 150, 255, 255),
    QColor(0, 130, 255, 255)
};

关于c++ - QList 通过初始化列表初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37271473/

相关文章:

qt - 如何在 TableView rowDelegate 中右键单击时显示上下文菜单

c++ - QtConcurrent映射和进度报告

c++ - 使用QScriptEngine计算计算

c++ - 从一个句子中逐字打印

c++ - GStreamer 管道在 gst_element_get_state 上挂起

c++ - 如何用 "-pthread"而不是 "-mthread"编译 boost_thread?

c++ - 是否有仅从零增加到一的按位技巧?

node.js - Node Gui安装找不到Cmake

c++ - 禁止在友元函数中调用私有(private)构造函数

qt - 为什么 ldd 对不同目录中的同一文件产生不同的结果?