std::experimental::ranges::Sentinel
來自 cppreference.com
< cpp | experimental | ranges
定義於標頭檔案 <experimental/ranges/iterator> |
||
template< class S, class I > concept bool Sentinel = |
(ranges TS) | |
Sentinel
概念指定了 Iterator
型別與其值表示一個範圍的 Semiregular
型別之間的關係。
令 s
和 i
分別是型別 S
和 I
的值,使得 [
i,
s)
表示一個範圍。Sentinel<S, I>
僅當滿足以下條件時才被滿足:
- i == s 定義良好。
- 如果 bool(i != s) 為真,那麼
i
是可解引用的,且[
++i,
s)
表示一個範圍。
==
的域可能會隨時間變化。給定一個迭代器 i
和一個哨兵 s
,使得 [
i,
s)
表示一個範圍,並且 i != s,在遞增任何等於 i
的迭代器之後(因此在這樣的遞增之後,i == s 不再要求定義良好),[
i,
s)
不再需要繼續表示一個範圍。