struct bidirectional_iterator_tag {}
屬性 | 有效的表示式 |
---|---|
可以預設構造、複製構造、複製賦值和析構 | X a; |
可以使用相等/不等運算子進行等價比較 (當兩個迭代器值指向相同的底層序列時才有意義)。 | a == b |
可以作為右值解引用(如果處於可解引用狀態)。 | *a |
對於可變迭代器(非 const 迭代器) 可以作為左值解引用(如果處於可解引用狀態)。 | *a = t |
可以遞增(如果處於可解引用狀態)。 結果是也可解引用或越界迭代器。 兩個相等比較的迭代器,在都增加後仍保持相等比較。 | ++a |
可以遞減(如果其前面有一個可解引用的迭代器值)。 | --a a-- *a-- |
屬性 | 有效的表示式 |
---|---|
可以預設構造、複製構造、複製賦值和析構 | X a; |
可以使用相等/不等運算子進行等價比較 (當兩個迭代器值指向相同的底層序列時才有意義)。 | a == b |
可以作為右值解引用(如果處於可解引用狀態)。 | *a |
對於可變迭代器(非 const 迭代器) 可以作為左值解引用(如果處於可解引用狀態)。 | *a = t |
可以遞增(如果處於可解引用狀態)。 結果是也可解引用或越界迭代器。 兩個相等比較的迭代器,在都增加後仍保持相等比較。 | ++a |
可以遞減(如果其前面有一個可解引用的迭代器值)。 | --a a-- *a-- |
左值是可交換的。 | swap(a,b) |
const T&
)。