gpt4 book ai didi

c++ - Unordered_map 迭代器抛出错误

转载 作者:行者123 更新时间:2023-11-30 04:04:46 28 4
gpt4 key购买 nike

我有这个代码:

int solution(int K, const vector<int> &A) {
int count=0,size,comp=0;
unordered_map<long,long> map;

size = A.size();
if(size==0)
return 0;

for(int i=0;i<size;i++){
map[A[i]] = i;
}

for(int i=0;i<size;i++){
comp = K-A[i];
unordered_map<long,long>::const_iterator index = map.find(comp); //error here
if(index == map.end())
continue;
else{
count++;
}
}
cout << "final count: " << count << endl;
return count;
}

我收到无效操作数的错误,无法弄清楚我做错了什么。我试过切换迭代器,但它也可能是我的编译器。我用它来编译:

clang++ -stdlib=libc++ -std=gnu++11 workingpairs.cpp

我的错误是:预期的';'在声明结束时 unordered_map::const_iterator index = map.find(comp);

间接需要指针操作数(“int”无效) __table_.__insert_unique(*__first);

在函数模板特化 'std::__1::unordered_map, std::__1::equal_to, std::__1::allocator >>::insert' 在此处请求

任何见解/帮助将不胜感激!

编辑:

我已经返回并修复了错误。

最佳答案

你在下面的语句中遗漏了 ::

unordered_map<long,long>const_iterator

应该是:

unordered_map<long,long>::const_iterator

关于c++ - Unordered_map 迭代器抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23622384/

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