gpt4 book ai didi

c++ - 从映射中的嵌套对引用值

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:40:36 27 4
gpt4 key购买 nike

我有一个映射,其中包含一个 int 和一对嵌套的两个字符串:

map<int, pair<string, string> > books;

我还有一个字符串 vector 。

vector<string> returned;  

以及伴随它们的两个迭代器:

vector<string> returned::iterator it2; 
map<int, pair<string, string> >::iterator it3;

我正在尝试访问嵌套在 map 中的对中的第一个字符串,以将其与 vector “返回”的当前字符串进行比较。我正在使用两个迭代器来执行此操作。但是,我似乎无法访问嵌套对的第一个字符串。

//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”不是解决方案。

提前致谢。

最佳答案

有两个错误。 it3->second 不是迭代器。同样如评论中所述,您正在将 it2 (迭代器)与字符串进行比较。有错误的行应该是这样的:

if(*it2 == (it3->second.first))

关于c++ - 从映射中的嵌套对引用值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13672848/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com