相关疑难解决方法(0)

C++按值而不是按位置擦除向量元素?

vector<int> myVector;
Run Code Online (Sandbox Code Playgroud)

并且让我们说向量中的值是这个(按此顺序):

5 9 2 8 0 7
Run Code Online (Sandbox Code Playgroud)

如果我想删除包含值"8"的元素,我想我会这样做:

myVector.erase(myVector.begin()+4);
Run Code Online (Sandbox Code Playgroud)

因为那会抹掉第4个元素.但有没有办法根据值"8"擦除元素?喜欢:

myVector.eraseElementWhoseValueIs(8);
Run Code Online (Sandbox Code Playgroud)

或者我只是需要遍历所有的向量元素并测试它们的值?

c++ stl vector erase erase-remove-idiom

235
推荐指数
3
解决办法
29万
查看次数

标签 统计

c++ ×1

erase ×1

erase-remove-idiom ×1

stl ×1

vector ×1