小弟近日初学Qt的容器类,想演示一下Qt文档里的例子:
#include <QApplication>
#include <QString>
#include <QListIterator>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QList<QString> list;
list << "A" << "B" << "C" << "D";
QListIterator<QString> i(list);
while (i.hasNext() ) {
qDebug() << i.next();
}
return app.exec();
}
编译时提示一大堆错误:
main.cpp: In function ‘int main(int, char**)’:
/usr/include/qt4/QtCore/qglobal.h:1047: error: too few arguments to function ‘void qDebug(const char*, ...)’
main.cpp:14: error: at this point in file
main.cpp:14: error: no match for ‘operator<<’ in ‘qDebug(<expression error>) << i. QListIterator<T>::next [with T = QString]()’
/usr/include/qt4/QtCore/qchar.h:294: note: candidates are: QDataStream& operator<<(QDataStream&, const QChar&)
/usr/include/qt4/QtCore/qbytearray.h:497: note: QDataStream& operator<<(QDataStream&, const QByteArray&)
.........
难道是qDebug()的用法不对吗?我有点晕了。
求高人一点迷津。