改变vector对iterator的影响

来源:互联网 发布:matlab数据导入origin 编辑:程序博客网 时间:2024/06/11 12:12

写一下怎么操作vector后会对操作之前的iterator,pointer,reference有影响,不足之处请指出。

一、插入元素

1、如果插入的元素大于了容器现有的内存大小,需要重新分配内存则之前的iterator失效。如:默认初始化容器,先push_back五个元素,记录iterator,再push_back10个元素,则会重新分配内存,iterator失效。

2、在iterator之前插入元素,iterator失效。

3、在iterator之后插入元素,且没有重新分配内存则iterator可继续使用。

二、删除元素 (删除元素不会改变已分配内存的大小,内存不会改变)

1、删除iterator之前的元素,iterator失效。

2、删除iterator之后的元素,iterator可继续使用

0 0
原创粉丝点击