c++ remove_if条件函数怎么写

   2024-10-05 4660
核心提示:在C++中,可以使用remove_if()算法函数结合lambda表达式来实现条件删除。下面是一个示例代码:#include iostream#include vector

在C++中,可以使用remove_if()算法函数结合lambda表达式来实现条件删除。下面是一个示例代码:

#include <iostream>#include <vector>#include <algorithm>int main() {    std::vector<int> numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9};    // 使用remove_if()和lambda表达式来删除偶数    numbers.erase(std::remove_if(numbers.begin(), numbers.end(), [](int num) {        return num % 2 == 0;    }), numbers.end());    // 输出删除偶数后的结果    for (int num : numbers) {        std::cout << num << " ";    }    return 0;}

在上面的示例代码中,我们使用remove_if()算法函数和lambda表达式来删除偶数。Lambda表达式[](int num) { return num % 2 == 0; }会在remove_if()中被调用,对每个元素进行判断,如果满足条件则会被移动到数组末尾,并返回一个指向被移动元素之后的起始位置的迭代器,然后使用erase()来删除这些元素。

你可以根据具体的需求来编写lambda表达式中的条件函数,来实现不同的条件删除操作。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号