vector迭代器失效問題 C 中map容器的迭代器使用?
C 中map容器的迭代器使用?這個句子定義了迭代器映射。這個定義不能出現(xiàn)在逗號表達(dá)式中。所以把這個句子放在for循環(huán)之前。map沒有繼承iterable,為什么可以使用迭代器?1. Iterator
C 中map容器的迭代器使用?
這個句子定義了迭代器映射。
這個定義不能出現(xiàn)在逗號表達(dá)式中。所以把這個句子放在for循環(huán)之前。
map沒有繼承iterable,為什么可以使用迭代器?
1. Iterator執(zhí)行迭代,iteratable提供Iterator。
2. 如果沒有設(shè)置迭代器,并且將next、hasnext等插入到集合中,那么集合將有一個狀態(tài),因為必須在內(nèi)部記錄當(dāng)前光標(biāo)位置。
3. 這是不合理的。如果這樣做,在嵌套循環(huán)時就不能循環(huán)同一個集合。
4. 更不用說多線程了
5。主要原因是以上一點。這是“能”的問題,不是“好”的問題。其他“壞”的原因?qū)⒉槐惶峒啊?/p>