我嘗試將一個矢量上一個矢量複製到另一個矢量中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