std::incrementable
來自 cppreference.com
< cpp | 迭代器 (iterator)
定義於標頭檔案 <iterator> |
||
template< class I > concept incrementable = |
(C++20 起) | |
此概念指定了可以透過前增量和後增量運算子遞增的型別的要求,其遞增操作是等價保留的,並且型別是std::equality_comparable。
與僅支援單程演算法的std::weakly_incrementable不同,建模std::incrementable
的型別可以使用多程單向演算法。
[編輯] 語義要求
I
建模 std::incrementable
僅當給定兩個型別為 I
的可遞增物件 a
和 b
時
- bool(a == b) 蘊含 bool(a++ == b),且
- bool(a == b) 蘊含 bool(((void)a++, a) == ++b)。
[編輯] 等價保留
標準庫概念的requires 表示式中宣告的表示式要求是等價保留的(另有說明除外)。
[編輯] 參閱
(C++20) |
指定一個semiregular 型別可以使用前置和後置增量運算子進行增量操作(概念) |
(C++20) |
指定型別與另一型別相同 (概念) |