分享方式:


default_searcher 類別

default_searcher是函式物件類型,用於搜尋物件建構函式中所指定序列的作業。 搜尋是在提供給物件函式呼叫運算子的另一個序列內完成。 會 default_searcher 叫用 std::search 來執行搜尋。

語法

template <class ForwardIterator, class BinaryPredicate = equal_to<>>
class default_searcher
{
    default_searcher(
        ForwardIterator pat_first,
        ForwardIterator pat_last,
        BinaryPredicate pred = BinaryPredicate());

    template <class ForwardIterator2>
    pair<ForwardIterator2, ForwardIterator2> operator()(
        ForwardIterator2 first,
        ForwardIterator2 last) const;
};

成員

member 描述
建構函式
default_searcher 建構搜尋程序實例。
運算子
operator() 叫用序列上的作業。

default_searcher建構函式

default_searcher使用序列來搜尋和相等述詞,以建構函式物件。

default_searcher(                   // C++17
    ForwardIterator pat_first,
    ForwardIterator pat_last,
    BinaryPredicate pred = BinaryPredicate());

constexpr default_searcher(         // C++20
    ForwardIterator pat_first,
    ForwardIterator pat_last,
    BinaryPredicate pred = BinaryPredicate());

參數

pat_first
要搜尋之序列的初始專案。

pat_last
要搜尋的序列結尾。

pred
序列元素的選擇性相等比較述詞。 如果未指定相等比較類型,則預設值為 std::equal_to

備註

擲回 BinaryPredicateForwardIterator 類型的複製建構函式擲回的任何例外狀況。

這個類別在 C++17 中是新的。 C++20 使建構函式 constexpr成為 。

operator()

函數運算子的呼叫運算符。 在自變數序列 [first, last) 中搜尋建構函式所指定序列。

template <class ForwardIterator2>   // C++17
pair<ForwardIterator2, ForwardIterator2> operator()(
    ForwardIterator2 first,
    ForwardIterator2 last) const;

template <class ForwardIterator2>   // C++20
constexpr pair<ForwardIterator2, ForwardIterator2> operator()(
    ForwardIterator2 first,
    ForwardIterator2 last) const;

參數

first
要在其中搜尋之序列的初始專案。

last
要在其中搜尋之序列的結尾。

備註

傳回一對迭代器。 初始反覆運算器 i 是下列有效結果:

std::search( first, last, pat_first, pat_last, pred ).

如果 i* 是最後一個,則配對的第二個反覆運算器是最後個。 否則,就是下列專案的有效結果:

std::next( i, std::distance( pat_first, pat_last )).

這個類別在 C++17 中是新的。 C++20 呼叫運算子 constexpr

另請參閱

<functional>
algorithm 函式
std::search