首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

QMultiMap中使用foreach的有关问题

2012-04-03 
QMultiMap中使用foreach的问题QMultiMapQString,QMapQString,QString item......foreach(QString ke

QMultiMap中使用foreach的问题
QMultiMap<QString,QMap<QString,QString> > item;
......
foreach(QString key, item.keys()){
  foreach(QMap<QString,QString> kv, item.values(key)){
  // 将key和kv写入xml文件
  WriteItem(key,kv);
  }
}
出现“宏“Q_FOREACH”传递了 3 个参数,但只需要 2 个”,"‘Q_FOREACH’在此作用域中尚未声明"错误提示。
如果将第二个foreach(foreach(variables ,container)原型)中的variables改为普通数据类型,则是正确的。
请问:
1 错误的原因
2 如何遍历item
现行谢过

[解决办法]

C/C++ code
typedef QMap<QString,QString> QStringPairMap;QMultiMap<QString, QStringPairMap> item;......foreach(QString key, item.keys()){  foreach(QStringPairMap kv, item.values(key)){  // 将key和kv写入xml文件  WriteItem(key,kv);  }} 

热点排行