首先,我读了所有与此相关的问题以前问过的问题,但并没有能够解决我的问题。 我有一个3D地图,
map<int,map<const char*, const char*>> map3D;
map<const char*, const char*> submap;
现在,我插入重视在像这样的整型值最大为5
,但每个int值有50 key and value
的子图。
我插入这样的价值
submap.insert(std::pair<const char*,const char*>(TempA, TempB));
map3D.insert(pair<int,map<const char*,const char*>>(count,submap));
计数值将后TEMP1和TempB值被递增将超过50倍的值。 现在我想读回值,而且这个我做这样的在这个问题中提及如何通过地图的C ++地图循环? 。
std::map<int,map<const char*,const char*>>::iterator out_it;
for(out_it =map3D.begin();out_it != map3D.end();++out_it)
{
for(std::map<const char*, const char*>::const_iterator in_it=out_it->second.begin();in_it != out_it->second.end(); ++in_it)
std::cout << in_it->first << " => " << in_it->second <<endl;
}
由于int是只有5所以它仅示出5 TEMPA和TempB的值。 如果只在迭代子图,它显示所有的值
for(std::map<const char*, const char*>::const_iterator in_it=submap.begin();in_it != submap.end(); ++in_it)
std::cout << in_it->first << " => " << in_it->second <<endl;
任何人都可以指导我如何我可以读取所有的值。 谢谢