溫馨提示×

c++ all_of在STL容器中的應用

c++
小樊
121
2024-09-04 18:54:05
欄目: 編程語言

all_of 是 C++ 標準庫` 中的一個函數,它用于檢查容器中的所有元素是否都滿足給定的條件。這個函數對于確保容器中的所有元素都符合特定規則非常有用。

all_of 的基本語法如下:

template< class InputIt, class UnaryPredicate >
bool all_of( InputIt first, InputIt last, UnaryPredicate p );

其中:

  • firstlast 是要檢查的范圍的起始和結束迭代器。
  • p 是一個一元謂詞,用于測試每個元素是否滿足條件。

下面是一個使用 all_of 的簡單示例,演示了如何檢查一個 std::vector<int> 中的所有元素是否都大于 0:

#include<iostream>
#include<vector>
#include<algorithm>

bool is_positive(int n) {
    return n > 0;
}

int main() {
    std::vector<int> numbers = {1, 2, 3, 4, 5};

    bool all_positive = std::all_of(numbers.begin(), numbers.end(), is_positive);

    if (all_positive) {
        std::cout << "All elements are positive."<< std::endl;
    } else {
        std::cout << "Not all elements are positive."<< std::endl;
    }

    return 0;
}

在這個示例中,我們定義了一個名為 is_positive 的輔助函數,用于檢查一個整數是否大于 0。然后,我們使用 std::all_of 函數檢查 numbers 向量中的所有元素是否都大于 0。如果所有元素都大于 0,程序將輸出 “All elements are positive.”,否則將輸出 “Not all elements are positive.”。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女