错误调用QList :: push_back()

时间:2015-01-13 15:47:59

标签: c++ qt data-structures qlist

我试图在另一个QList中插入QList,但我收到以下错误:

parser.y:40: error: no matching function for call to 'QList<QList<QString> >::insert(QList<QList<QString> >&)'

尝试将名为partialFormula的QList推送到另一个名为公式的QList:

formula.push_back(partialFormula);

我认为我的错误在于我的QList模板的定义,因为公式QList的预期值是QList的{​​{1}},但我试图尝试插入QString QList QList。{/ p>

QString

另外,我想在partialFormula中插入另一个QList&gt;,依此类推......,我是否必须创建QList<QList<QString> > formula; QList<QList<QString> > partialFormula; formula.push_back(partialFormula); //error. class

我该怎么办呢?

我的代码:

struct

谢谢!

2 个答案:

答案 0 :(得分:1)

push_back函数仅用于出于STL兼容性原因,并且仅接受在您的案例T中追加QString类型的变量。看看这里:QT Doc

尝试使用以下其中一项:

formula.append(partialFormula);

formula += partialFormula;

formula << partialFormula;

formula.insert(formula.size(), partialFormula);

答案 1 :(得分:0)

如果您想追加相同类型的其他QList,可以使用+= operator

formula += partialFormula;