0
QList <QPointF> markers;
markers.append (QPointF (getLat (), getLon ()));


QList <QPointF> :: iterator i;
for (i = markers.begin(); i != markers.end(); ++i)
     std :: cout << *i << endl;

给我:

错误:在 'std::cout << i.QList::iterator::operator* with T = QPointF' 中不匹配 'operator<<'

4

3 回答 3

4

您可以使用qDebug().

QList<QPointF> markers;
markers.append(getLat(), getLon());
QList<QPointF>::iterator i;
for (i = markers.begin(); i != markers.end(); ++i)
    qDebug() << *i;

记得包括QDebug

#include <QDebug>
于 2013-11-15T08:34:24.370 回答
2

为此,foreach 循环会更简单:

Q_FOREACH( QPointF p, markers ) {
    qDebug() << p;
}
于 2013-11-15T09:45:08.537 回答
1

AFAIKQPointF类本身没有<<重载运算符。您可以重新实现它并自己重载运算符,或者更简单地尝试输出坐标myPoint.x()myPoint.y().

于 2013-11-15T08:29:20.590 回答