1. 程式人生 > >Iterator invalidation(叠代器失效)

Iterator invalidation(叠代器失效)

() ins 叠代 city val ase tor emp operator

一.vector

所有讀操作、swap、std::swap:都不會引起叠代器失效...

clear、operator=、assign:都會引起全部變量叠代器失效

reserve、shrink_to_fit:如果capacity的大小被改變了,則引起全部變量叠代器失效

erase:被刪除的變量以及其後面的變量包括end()都叠代器失效

push_back、emplace_back:假如capacity的大小被改變,則引起全部變量叠代器失效。否則只是end()叠代器失效

insert、emplace、resize:假如capacity的大小被改變,則引起全部變量叠代器失效。否則只是在插入位置後面的變量叠代器失效

pop_back:被刪除的變量以及end()叠代器失效

Iterator invalidation(叠代器失效)