我尝试将一个矢量上一个矢量复制到另一个矢量中currentVector in C++。在C++中复制并遍历矢量
我的代码如下。 我想浏览currentVector并根据值的条件,在之前的矢量中添加元素。我不确定这是正确的做法。
int ChooseElement(std::vector<Powers>* previousVector) {
std::vector<Powers> currentVector(*previousVector);
for(auto iter = currentVector.begin(); iter != currentVector.end(); iter++) {
if(condition on (*iter))
(*previousPowers).push_back(someValue);
}
return 0
}
main(int argc, const char * argv[]){
std::vector<myObjectType> listOfElements;
myObjectType result = myObjectType(1,2);
listOfElements.push_back(result);
result = ChooseElements(&listOfElements);
return 0;
}
正确的方法是'的std :: copy_if' – 101010
任何理由为什么你使用一个指针将你的向量传递给函数而不是引用? –
如果你不希望通过'nullptr'你最好通过(const)引用,而不是指针 – Slava