名前空間
変種
操作

operator<,<=,>,>=(std::basic_const_iterator<Iter>)

From cppreference.com
 
 
イテレータライブラリ
イテレータのコンセプト
イテレータのプリミティブ
アルゴリズムのコンセプトとユーティリティ
間接呼び出し可能コンセプト
共通アルゴリズム要件
(C++20)
(C++20)
(C++20)
ユーティリティ
(C++20)
イテレータアダプタ
Rangeアクセス
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
 
template< /*not-a-const-iterator*/ I >

friend constexpr bool operator<( const I& x, const basic_const_iterator& y )

    requires std::random_access_iterator<Iter> && std::totally_ordered_with<Iter, I>;
(1) (C++23から)
template< /*not-a-const-iterator*/ I >

friend constexpr bool operator>( const I& x, const basic_const_iterator& y )

    requires std::random_access_iterator<Iter> && std::totally_ordered_with<Iter, I>;
(2) (C++23から)
template< /*not-a-const-iterator*/ I >

friend constexpr bool operator<=( const I& x, const basic_const_iterator& y )

    requires std::random_access_iterator<Iter> && std::totally_ordered_with<Iter, I>;
(3) (C++23から)
template< /*not-a-const-iterator*/ I >

friend constexpr bool operator>=( const I& x, const basic_const_iterator& y )

    requires std::random_access_iterator<Iter> && std::totally_ordered_with<Iter, I>;
(4) (C++23から)

basic_const_iterator と別の値を比較します。左オペランドが basic_const_iterator でない場合に使用される関数テンプレートです。

I は、basic_const_iterator の特殊化ではない場合にのみ、exposition-only コンセプト /*not-a-const-iterator*/ を満たします。

これらの関数は、通常の 非修飾 または 修飾ルックアップ からは可視でなく、basic_const_iterator<Iter> が引数に関連付けられたクラスである場合にのみ、引数依存名前探索 によって見つけることができます。

目次

[編集] パラメータ

x, y - 比較するイテレータ

[編集] 戻り値

1) x < y.base()
2) x > y.base()
3) x <= y.base()
4) x >= y.base()

[編集] 注釈

左オペランドが basic_const_iterator である場合、メンバー比較関数が使用されます。

[編集]

#include <iterator>
 
int main()
{
    static int arr[1];
    static constexpr std::basic_const_iterator<int*> it = std::end(arr);
    static_assert(arr < it);
}

[編集] 関連項目

English 日本語 中文(简体) 中文(繁體)