deque怎么批量删除数据
时间: 2024-05-07 14:20:03 浏览: 94
批量删除数据表
5星 · 资源好评率100%
如果你想要批量删除deque中的数据,可以使用erase-remove惯用法。这个方法通过两个步骤来实现:首先使用std::remove()将要删除的元素移到末尾,然后使用erase()来删除这些元素。
下面是一个示例代码:
```c++
#include <iostream>
#include <deque>
#include <algorithm>
int main() {
std::deque<int> myDeque = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
// 移除所有偶数
myDeque.erase(std::remove_if(myDeque.begin(), myDeque.end(), [](int i) { return i % 2 == 0; }), myDeque.end());
// 打印结果
for (int i : myDeque) {
std::cout << i << " ";
}
std::cout << std::endl;
return 0;
}
```
输出:
```
1 3 5 7 9
```
这里的remove_if()函数接受一个lambda表达式作为参数,用于判断哪些元素需要被移除。在这个例子中,我们使用了一个简单的lambda表达式来判断元素是否为偶数。最后,erase()函数删除了移动到末尾的所有元素。
阅读全文