私は3つのマップを持っています:
map<string, vector<int> > map1
map<string, vector<int> > map2
map<string, vector<int> > map3
map1 と map2 の両方に存在するすべての文字列と対応するベクトルを含む 3 番目のマップを作成する必要があります。文字列が同じであっても、それらのベクトルは異なる可能性があり、両方の共通文字列のすべてのベクトルを 1 つのベクトルに追加する必要があります。これは私が試みていることですが、私はちょっと迷っています:
for(map<string, vector<int> >::iterator it1=map1.begin(); it1 != map1.end(); it1++)
{
string name = (*it1).first;
for(map<string, vector<int> >::iterator it2=map2.begin(); it2 != map2.end(); it2++)
{
string name2 = (*it2).first;
if (name == name2)
{
map3[name2] = (*it2).second;
}
}
}
ご協力ありがとうございました!!