C++中的remove_if函数用于在容器中删除满足指定条件的元素。可以结合erase函数一起使用来实现删除操作。
下面是remove_if函数的使用方法示例:
#include <iostream>
#include <vector>
#include <algorithm>
bool isOdd(int num) {
return num % 2 != 0;
}
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
// 删除所有奇数
numbers.erase(std::remove_if(numbers.begin(), numbers.end(), isOdd), numbers.end());
// 输出删除后的结果
for (int num : numbers) {
std::cout << num << " ";
}
return 0;
}
在上面的示例中,我们定义了一个isOdd函数来判断一个数字是否为奇数。然后在main函数中,我们使用remove_if函数配合erase函数来删除容器中所有奇数。最后输出删除后的结果。