int とネストされた 2 つの文字列のペアを含むマップがあります。
map<int, pair<string, string> > books;
文字列のベクトルもあります。
vector<string> returned;
そして、それらに付随する 2 つの反復子:
vector<string> returned::iterator it2;
map<int, pair<string, string> >::iterator it3;
マップにネストされているペアの最初の文字列にアクセスして、「返された」ベクトルの現在の文字列と比較しようとしています。これを行うために 2 つのイテレータを使用しています。ただし、ネストされたペアの最初の文字列にアクセスできないようです。
//PUT BACK BORROWED BOOKS
for (it2 = returned.begin(); it2 != returned.end(); it2++){
//SEARCH FOR POSITION OF BOOK
for (it3 = books.begin(); it3 != books.end(); it3++){
//PROBLEM IN LINE BELOW
if(it2 == (it3->second-> first))
int bookPos = it3 -> first;
}
}
ペアのこの最初の文字列を参照する方法を知っている人はいますか? 明らかに、「it->second-> first」は解決策ではありません。
前もって感謝します。