std::ranges::basic_istream_view::iterator
から ja.cppreference.net
struct /*iterator*/;
|
(説明専用*) | |
ranges::basic_istream_view<Val, CharT, Traits>::iterator は begin() の ranges::basic_istream_view<Val, CharT, Traits> が返すイテレータの型である。
iterator は input_iterator であるが、 LegacyInputIterator を満たさず、そのためC++20以前の algorithms では動作しない。
ネスト型
| 型 | 定義 |
iterator_concept
|
std::input_iterator_tag |
difference_type
|
std::ptrdiff_t |
value_type
|
Val
|
データメンバ
| メンバ | 説明 |
ranges::basic_istream_view<Val, CharT, Traits> parent_
|
親ビューへのポインタ (説明専用メンバオブジェクト*) |
メンバー関数
std::ranges::basic_istream_view:: iterator :: iterator
|
/*iterator*/
(
const
/*iterator*/
&
)
=
delete
;
|
(1) | (since C++20) |
|
/*iterator*/
(
/*iterator*/
&&
)
=
default
;
|
(2) | (since C++20) |
|
constexpr
explicit
/*iterator*/
(
basic_istream_view
&
parent
)
;
|
(3) | (since C++20) |
1)
コピーコンストラクタは削除されています。このイテレータはコピーできません。
2)
ムーブコンストラクタはデフォルトで定義されます。
(注:指定されたテキストブロック内に翻訳対象の自然言語テキストが存在しないため、HTML構造はそのまま保持されています)
std::ranges::basic_istream_view:: iterator :: operator=
|
/*iterator*/
&
operator
=
(
const
/*iterator*/
&
)
=
delete
;
|
(1) | (C++20以降) |
|
/*iterator*/
&
operator
=
(
/*iterator*/
&&
)
=
default
;
|
(2) | (C++20以降) |
1)
コピー代入演算子は削除されています。このイテレータはコピー不可です。
2)
ムーブ代入演算子はデフォルト化されています。
std::ranges::basic_istream_view:: iterator :: operator++
|
/*iterator*/
&
operator
++
(
)
;
|
(1) | (C++20以降) |
|
void
operator
++
(
int
)
;
|
(2) | (C++20以降) |
2)
以下と等価:
++*
this
。
(注:指定されたテキストブロック内に翻訳対象の自然言語テキストが含まれていないため、HTML構造はそのまま保持されています)
std::ranges::basic_istream_view:: iterator :: operator*
|
Val
&
operator
*
(
)
const
;
|
(C++20以降) | |
非メンバー関数
operator== (std::ranges::basic_istream_view:: iterator , std::default_sentinel)
|
friend
bool
operator
==
(
const
/*iterator*/
&
x,
std::
default_sentinel_t
)
;
|
(C++20以降) | |
この関数は通常の
非修飾名探索
または
修飾名探索
では可視化されず、
std::ranges::basic_istream_view::
iterator
が引数の関連クラスである場合にのみ
実引数依存探索
によって発見されます。
不具合報告
以下の動作変更の欠陥報告書は、以前に公開されたC++規格に対して遡及的に適用されました。
| DR | Applied to | Behavior as published | Correct behavior |
|---|---|---|---|
| P2325R3 | C++20 |
default constructor was provided as C++20
iterators must be
default_initializable
|
removed along with
the requirement |