如何使用赋值运算符让迭代器对列表进行操作

时间:2019-05-29 00:06:46

标签: c++ qt iterator assignment-operator qlist

亲爱的stackoverflow社区,我对如何让qlistiterator在qlist上进行操作有疑问。根据qt的文档,qlistiterator具有一个赋值运算符“ =”,如下所示:

QListIterator & QListIterator::operator=(const QList<T> & list)

对于我的代码,我的mainwindow类中有两个成员:

QList<int> timepoints;
QListIterator<int> timeIter(QList<int> &list);

并在构造函数中:

timeIter=timepoints;

但是此行给出了错误:

invalid use of member function (did you forget the '()' ?)

任何人都可以帮助解释原因吗?

1 个答案:

答案 0 :(得分:0)

QListIterator被错误地声明为成员函数而不是成员变量。

在类声明中使用:

ILogger<>

分配运算符使您可以重新分配迭代器。无法使用它,因为class YourClass { QListIterator<int> timeIter; }; 没有默认的构造函数。因此,要执行您想做的事情,请使用初始化程序:

QListIterator