是否有與replace
的值相同的函數,如erase
。如何根據向量中的值替換元素?
以下代碼行現在刪除BC
中存在的任何值。
vector<double> activeDof;
for (int i = 0; i < BC.size(); i++)
{
activeDof.erase(find(activeDof.begin(), activeDof.end(), BC[i]));
}
這會減少我的矢量大小,並在以後出錯我的代碼。我想要做的是將BC中的值替換爲零。這樣我的矢量中的元素數量仍然相同。我嘗試使用替換函數,如下所示。
vector<double> activeDof;
for (int i = 0; i < BC.size(); i++)
{
replace(activeDof.begin(),activeDof.end(),BC[i],0);
}
我仍然在「替換」下面收到錯誤消息。有關如何根據矢量中的值替換元素的任何建議?
編輯:BC是另一個包含一些元素的向量。我想找出是否此元素是存在於載體activeDof和如果存在欲把這一0
什麼是'BC'在你的代碼中提到您可以修復你的代碼? –
我覺得你把'BC'與'activeDof'混淆了?你正在執行替換元素的矢量'activeDof',但你期望'BC'的變化? 「_我想要做的是用BC替換BC中的值_」? – Snps
BC是另一個包含一些元素的向量 – user6771484