C++容器:迭代器的操作
阿新 • • 發佈:2019-01-29
共通操作:
*iter |
返回迭代器 iter 所指向的元素的引用 |
iter->mem |
對 iter 進行解引用,獲取指定元素中名為 mem 的成員。等效於 (*iter).mem |
++iter iter++ |
給 iter 加 1,使其指向容器裡的下一個元素 |
--iter iter-- |
給 iter 減 1,使其指向容器裡的前一個元素 |
iter1 == iter2 |
比較兩個迭代器是否相等(或不等)。當兩個迭代器指向同一個容器中的同一個元素,或者當它們都指向同一個容器的超出末端的下一位置時,兩個迭代器相等 |
只有vector 和 deque 型別迭代器支援的操作:
iter + n |
在迭代器上加(減)整數值 n,將產生指向容器中前面(後面)第 n 個元素的迭代器。新計算出來的迭代器必須指向容器中的元素或超出容器末端的下一位置 |
iter1 += iter2 |
這裡迭代器加減法的複合賦值運算:將 iter1 加上或減去 iter2 的運算結果賦給 iter1 |
iter1 - iter2 |
兩個迭代器的減法,其運算結果加上右邊的迭代器即得左邊的迭代器。這兩個迭代器必須指向同一個容器中的元素或超出容器末端的下一位置 |
>, >=, <, <= |
迭代器的關係操作符。當一個迭代器指向的元素在容器中位於另一個迭代器指向的元素之前,則前一個迭代器小於後一個迭代器。關係操作符的兩個迭代器必須指向同一個容器中的元素或超出容器末端的下一位置 |