“cpp/experimental/ranges/iterator/Iterator”的版本间的差异

来自cppreference.com
< cpp‎ | experimental‎ | ranges
(++)
 
第2行: 第2行:
 
{{cpp/experimental/ranges/iterator/navbar}}
 
{{cpp/experimental/ranges/iterator/navbar}}
 
{{ddcl|header=experimental/ranges/iterator|since=ranges|1=
 
{{ddcl|header=experimental/ranges/iterator|since=ranges|1=
template <class I>
+
template< class I >
 
concept bool Iterator =
 
concept bool Iterator =
  requires(I i) {
+
requires(I i) {
    { *i } -> auto&&; // 要求 : i 可解引用
+
{ *i } -> auto&&; // 要求 可解引用
  } &&
+
} &&
  ranges::WeaklyIncrementable<I>;
+
WeaklyIncrementable<I>;
 
+
 
}}
 
}}
  
第15行: 第14行:
 
{{cpp/experimental/ranges/equality preservation}}
 
{{cpp/experimental/ranges/equality preservation}}
  
=== 注 ===
+
=== 注 ===
 
{{tt|Iterator}} 自身仅指定解引用和自增迭代器的操作。大多数算法将要求额外操作:
 
{{tt|Iterator}} 自身仅指定解引用和自增迭代器的操作。大多数算法将要求额外操作:
* 比较迭代器与哨位(见 {{rconcept|Sentinel}} );
+
* 比较迭代器与哨位(见 {{rconcept|Sentinel}});
* 从迭代器读取值(见 {{rconcept|Readable}} 及 {{rconcept|InputIterator}} );
+
* 从迭代器读取值(见 {{rconcept|Readable}} 及 {{rconcept|InputIterator}});
* 写入值到迭代器(见 {{rconcept|Writable}} 及 {{rconcept|OutputIterator}}
+
* 写入值到迭代器(见 {{rconcept|Writable}} 及 {{rconcept|OutputIterator}})
* 更丰富的迭代器动作集合(见 {{rconcept|ForwardIterator}} 、 {{rconcept|BidirectionalIterator}} 、 {{rconcept|RandomAccessIterator}}
+
* 更丰富的迭代器动作集合(见 {{rconcept|ForwardIterator}}、{{rconcept|BidirectionalIterator}}、{{rconcept|RandomAccessIterator}})
  
{{c|-> auto&&}} 制约解引用的结果类型不能为 {{c|void}}
+
{{c|-> auto&&}} 制约解引用的结果类型不能为 {{c|void}}。
  
 
{{langlinks|en}}
 
{{langlinks|en}}

2023年12月7日 (四) 02:13的最后版本