C++ 初始化QList的正确方法是什么?

C++ 初始化QList的正确方法是什么?,c++,qt,qlist,C++,Qt,Qlist,初始化QList的正确方法是什么?我想缩短此代码: QSplitter splitter; QList<int> list; list.append(1); list.append(1); splitter.setSizes(list); qspliter拆分器; QList列表; 列表。附加(1); 列表。附加(1); 拆分器。设置大小(列表); 但当我使用std::list初始化时,它似乎不起作用: splitter.setSizes(QList<int>::fr

初始化QList的正确方法是什么?我想缩短此代码:

QSplitter splitter;
QList<int> list;
list.append(1);
list.append(1);
splitter.setSizes(list);
qspliter拆分器;
QList列表;
列表。附加(1);
列表。附加(1);
拆分器。设置大小(列表);
但当我使用std::list初始化时,它似乎不起作用:

splitter.setSizes(QList<int>::fromStdList(std::list<int>(1, 1)));
splitter.setSizes(QList::fromStdList(std::list(1,1));

在后一种情况下,拆分器似乎按1:0的比例进行拆分。

您可以使用以下代码:

QList<int> list = QList<int>() << 1 << 1;

QList list=QList()永远不要使用它抛出的qt5.2使用的
QList()
错误:应为表达式QList-list2({1,1})@ꜱᴀᴍᴏᴛʜ:您需要
CONFIG+=c++11
。我认为它是自动启用的。非常感谢。
列表({1,1})
中的
()
是什么?它给了我一个语法错误。应该是
QList列表{1,1}
QList<int> list({1, 1});