//vector 刪除元素方式
#include #include #include using namespace std;
int main(int argc, char const *ar**)
//第一種 刪除5元素
// auto it = std::find(vec.begin(), vec.end(), 5);
// vec.erase(it);
// for_each(vec.begin(), vec.end(), (int v));
//第二種 刪除5元素
// vec.erase(vec.begin()+5);
// for_each(vec.begin(), vec.end(), (int v) );
//第三種 刪除5元素
// for(auto it = vec.begin(); it != vec.end();)
// // else
//
// }
// for_each(vec.begin(), vec.end(), (int v) );
//第四種 刪除5元素
vec.emplace_back(5);
vec.emplace_back(5);
auto it = std::find(vec.begin(), vec.end(), 5);
while (it != vec.end())
for_each(vec.begin(), vec.end(), (int v) );
return 0;
}
第四種是刪除多個重複元素最好的方法。
正確釋放乙個vector方式
std::vectortmp;
vec.swap(tmp);
cout << vec.capacity() << endl;
vector中的元素刪除
在vector中用迭代器刪除元素會用到erase 函式。這個函式返回的是刪除當前元素後下乙個元素的指標,也就是說在刪除元素後,指標指向刪除元素後面的那個,具體用法參考下面 vector iterator itin inliers.begin vector iterator itm matches.b...
vector刪除連續的元素
這個是在一次面試時候問的,刪除vector中的乙個指定元素 剛開始是這樣的,刪除vector中的乙個等於target的元素,我一想不就是這個,多簡單,上手就是寫個這。結果,我艹直接死迴圈 一臉尷尬,多麼簡單的題 然後調了一會,沒調出來 我是忽略了erase的返回值了,erase返回刪除當前元素的下乙...
Vector容器刪除元素
使用vector容器也有一段時間了,但是對於他的刪除操作還是有點疑問,今天就總結一下。vector資料儲存是一段預先分配好大小的記憶體連續的空間,插入資料和刪除資料都會引起後面資料記憶體的整體移動。今天就說說刪除操作吧 1 刪除最後的元素 直接使用pop back 就可以了,這個沒什麼好說的 2 刪...