Namespaces
Variants

std:: indirectly_readable

From cppreference.net
Iterator library
Iterator concepts
Iterator primitives
Algorithm concepts and utilities
Indirect callable concepts
Common algorithm requirements
(C++20)
(C++20)
(C++20)
Utilities
(C++20)
Iterator adaptors
Range access
(C++11) (C++14)
(C++14) (C++14)
(C++11) (C++14)
(C++14) (C++14)
(C++17) (C++20)
(C++17)
(C++17)
定義先ヘッダ <iterator>
( 説明専用* )
template < class In >

concept indirectly_readable =

__IndirectlyReadableImpl < std:: remove_cvref_t < In >> ;
(C++20以降)

indirectly_readable という概念は、 operator * を適用することで読み取り可能な型(ポインタ、スマートポインタ、入力イテレータなど)によってモデル化されます。

セマンティック要件

I の値 i が与えられたとき、 I indirectly_readable をモデルするのは、 それが包含する全てのコンセプトがモデルされ、かつ式 * i 等価性保存 である場合に限ります。

等価性保存

標準ライブラリコンセプトの requires expressions で宣言される式は、 equality-preserving であることが要求されます(特に明記されている場合を除く)。