C ++如何输出Vector of Map的值

时间:2011-03-10 05:11:02

标签: c++

  

可能重复:
  C++ Vector of Maps using an iterator how to

这是关于如何输出地图矢量值的单独Q.

我有

typedef std::map<string, string> mapDB;
vector<pair<int,mapDB> > mapDB_vec;

mapDB_vec db;

//populate mapDB_colVal 1st row
mapDB_colVal["X"]="APPLE";
mapDB_colVal["Y"]="RED";
db.push_back(make_pair(some_row_id, mapDB_colVal));

//populate mapDB_colVal 2nd row
mapDB_colVal["X"]="PEAR";
mapDB_colval["Y"]="GREEN";
db.push_back(make_pair(some_other_row_id, mapDB_colVal));

如何输出插入数据库的值。

喜欢这个伪

for (db.begin;db.end;)
{ 
print db[i].begin; db[i].end }

如何输出db中存储的值。任何帮助都会很棒。

由于

1 个答案:

答案 0 :(得分:1)

for (mapDB_vec::iterator i = db.begin(); i != db.end(); ++i) {
   std::cout << i->first << ": " << std::endl;
   for (mapDB::iterator j = i->second.begin(); j != i->second.end(); ++j) {
      std::cout << "  " << j->first " - " << j->second << std::endl;
   }
}