请大家帮忙看一下,我的insert 为什么会出错。。。
#include<QApplication>
#include <QMultiMap>
#include<QVector>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QMultiMap<QVector<char>,QVector<ushort> > multi_map;
QVector<char> key;
key.push_back('a');
key.push_back('b');
QVector<ushort> val;
val.push_back(100);
multi_map.insert(key,val);
return app.exec();
}
编译错误如下:
test.cpp:13: instantiated from here
/usr/include/QtCore/qmap.h:100: 错误:no match 为‘operator<’在‘key1 < key2’中
/usr/include/QtCore/qchar.h:381: 附注:备选为: bool operator<(QChar, QChar)
/usr/include/QtCore/qbytearray.h:500: 附注: bool operator<(const QByteArray&, const QByteArray&)
/usr/include/QtCore/qbytearray.h:502: 附注: bool operator<(const QByteArray&, const char*)
/usr/include/QtCore/qbytearray.h:504: 附注: bool operator<(const char*, const QByteArray&)
/usr/include/QtCore/qstring.h:883: 附注: bool operator<(const char*, const QString&)
/usr/include/QtCore/qstring.h:896: 附注: bool operator<(const char*, const QLatin1String&)
/usr/include/QtCore/qstring.h:909: 附注: bool operator<(const QLatin1String&, const QLatin1String&)
/usr/include/QtCore/qstring.h:1119: 附注: bool operator<(const QStringRef&, const QStringRef&)
make: *** [test.o] 错误 1