c++ - 是否有计算 vector 中所有正数的函数?

标签 c++ stl-algorithm

我正在寻找一个可以计算 vector 中所有正数的函数!我需要你的帮助。到目前为止,我发现的唯一函数是 algorithm 中的 std::count(),但它只在容器中搜索等于某个值的元素。也许有办法让这个函数在一定范围内搜索匹配项(在我的例子中,这个范围是从 1 到 +infinity)?谢谢。

最佳答案

最接近的是 std::count_if

你可以这样使用它:

#include <algorithm>
#include <vector>

int count_bigger(const std::vector<int>& elems) {
    return std::count_if(elems.begin(), elems.end(), [](int c){return c > 0;});
}

关于c++ - 是否有计算 vector 中所有正数的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36750736/

相关文章:

c++ - 如何找到我在 C++ 中从 ofstream 创建的文件的目录路径?

c++ - 如何通过使其中一个必须是显式的来解决对模糊构造函数的调用?

c++ - 如何从一个容器中取出某些元素并将这些元素的转换插入到另一个容器中?

c++ - STL算法删除容器中的所有对象?

c++ - 替换 STL map 中的多个元素

c++ - 测试字符串以查看是否存在数字并将值分配给变量同时跳过所有非数字值?

c++ - 使用 Visual Studio 2012 的静态链接 msvcrt 中的异常

C++推导成员函数参数

c++ - 使用 ifstream 复制算法

C++ STL : Passing an empty container to lower_bound