【发布时间】:2015-12-14 13:02:04
【问题描述】:
给定一组整数:
set<int> setA = {1,2,3,4,5};
现在我想在特定条件下将整数插入整数向量:
vector<int> vectorB;
for (set<int>::iterator it = setA.begin(); it != setB.end(); it++){
if (*it % 2 == 0){
}else{
vectorB.insert((*it));
count += 1;
}
}
但我得到一个错误:
error: no matching function for call to 'std::vector<int>::insert(const int&)'
为什么?
【问题讨论】:
-
en.cppreference.com/w/cpp/container/vector/insert - 实际上没有任何“官方”C++ 文档,但 cppreference 非常好。
-
要简单地添加(没有其他要求)元素到集合中,您应该使用
push_back而不是insert -
@LightnessRacesinOrbit 实际上我做到了。但我无法立即找到答案。现在我明白了。谢谢。
-
如果您无法“立即”找到答案,请多花几分钟时间阅读。并非所有事情都可以“立即”解决。需要一些耐心。
-
@yobichi Surly 写这个问题比阅读description 的
std::vector::insert花费更长的时间?