std::ranges::basic_istream_view::iterator
来自cppreference.com
                    
                                        
                    < cpp | ranges | basic istream view
                    
                                                            
                    |   struct /*iterator*/;  | 
(C++20 起) | |
basic_istream_view::begin 的返回类型。此处展示的名字 /*iterator*/ 仅用于阐释。
/*iterator*/ 为 input_iterator ,但不满足老式输入迭代器 (LegacyInputIterator) ,从而无法用于 C++20 前的算法。
成员类型
| 成员类型 | 定义 | 
  iterator_concept(C++20)
 | 
std::input_iterator_tag | 
  difference_type(C++20)
 | 
std::ptrdiff_t | 
  value_type(C++20)
 | 
  Val
 | 
成员函数
|    (构造函数) (C++20)  | 
  构造迭代器  (公开成员函数)  | 
|    operator= (C++20)  | 
   复制赋值运算符被删除; /*iterator*/ 为仅移动  (公开成员函数)  | 
|    operator++ (C++20)  | 
   令迭代器前进  (公开成员函数)  | 
|    operator* (C++20)  | 
   返回当前元素  (公开成员函数)  | 
std::ranges::basic_istream_view::iterator::iterator
|   constexpr explicit /*iterator*/( basic_istream_view& parent );  | 
(1) | (C++20 起) | 
|   /*iterator*/( const /*iterator*/& ) = delete;  | 
(2) | (C++20 起) | 
|   /*iterator*/( /*iterator*/&& ) = default;  | 
(3) | (C++20 起) | 
1) 从亲 
basic_istream_view 构造迭代器。2) 复制构造函数被删除。迭代器不可复制。
3) 移动构造函数被默认化。迭代器可移动。
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 起) | 
从底层流读取值并将它存储于亲 basic_istream_view 。
返回值
1) 
*this2) (无)
std::ranges::basic_istream_view::iterator::operator*
|   Val& operator*() const;  | 
(C++20 起) | |
返回到存储值的引用。
非成员函数
|    operator== (C++20)  | 
   与 std::default_sentinel_t 比较  (公开成员函数)  | 
operator==(std::ranges::basic_istream_view::iterator, std::default_sentinel)
|   friend bool operator==( const /*iterator*/& x, std::default_sentinel_t );  | 
(C++20 起) | |
与 std::default_sentinel_t 比较。
若 *this 无亲 basic_istream_view 或若底层流发生错误则返回 true 。
此函数对通常无限定或有限定查找不可见,而只能在 std::ranges::basic_istream_view::iterator 为参数的关联类时由实参依赖查找找到。 
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
| 缺陷报告 | 应用于 | 出版时的行为 | 正确行为 | 
|---|---|---|---|
| P2325R3 | C++20 |  因为 C++20 迭代器必须为 default_initializable 提供了默认构造函数
 | 
与该要求一同移除 |