分類
啥叫單遍掃描和多遍掃描?
推測多遍掃描就是可以再建些迭代器的副本,來掃描,不影響本身。
輸入迭代器
只讀不能寫,所以*iter 只能出現在=右邊。咋保證呢?不能保存迭代器狀態,只能單遍掃描。
一個有意思的事
問:
*it++會導致任何其他的指向流的迭代器失效,啥意思?
答:
輸入迭代器保存不了迭代器的狀態。改變副本會影響本身。
參考:
輸出迭代器
只能寫不能讀,所以*iter只能出現在=左邊。咋保證呢?不能保存迭代器狀態,只能單遍掃描。
前向迭代器
同時擁有輸入和輸出的性能,可以保存迭代器狀態,後面都支持多遍了。
雙向迭代器
比前向多了--
隨機訪問迭代器
比雙向多了好多隨機訪問的操作。