• 5010阅读
  • 2回复

编译出现个错误,长得让我实在看不懂,怎么解决? [复制链接]

上一主题 下一主题
离线aaniao999
 

只看楼主 倒序阅读 楼主  发表于: 2007-04-11
编译出现个错误,长得让我实在看不懂,怎么解决?
— 本帖被 XChinux 执行加亮操作(2008-07-19) —
错误:将 ‘const QMap<QString, QString>’ 作为 ‘typename QMap<Key, T>::iterator QMap<Key, T>::insert(const Key&, const T&) [with Key = QString, T = QString]’ 的 ‘this’ 实参时丢弃了类型限定

我的那行的代码是
whichMap.value(headerNow).insert(singleSetting.at(0),singleSetting.at(1));
一开始怀疑是括号,加了一对也没起什么作用.
(whichMap.value(headerNow)).insert(singleSetting.at(0),singleSetting.at(1));

变量是这样的
QMap<QString,QMap<QString, QString> > whichMap;
QMap<QString,QString> map;
whichMap.imsert("[main]",map);
QList<QString> singleSetting;
[ 此贴被XChinux在2008-07-19 22:02重新编辑 ]
离线htyoung

只看该作者 1楼 发表于: 2007-04-11
你的 whichMap的第二个参数是QMap,但是在你的调用里还是用QList<QString>

看看这样行吗?

whichMap.value(headerNow)).insert(singleSetting.at(0),map.at(1));
***
QT5
***
离线aaniao999

只看该作者 2楼 发表于: 2007-04-18
还是我自己来结下帖子吧,
我的意思可能楼上的误解了。
我是想一个QMap连接多个QMap
最后还算是&最起作用,现在终于发现&有时候是不能少的了

改成下面这种方式:
whichMap.value(headerNow)->insert(singleSetting.at(0),singleSetting.at(1));

QMap<QString,QMap<QString, QString> * > whichMap;
QMap<QString,QString> map;
whichMap.imsert("[main]",&map);
快速回复
限100 字节
 
上一个 下一个