- (1)vector的底层实现是数组;而list的底层实现是双向链表。
- (2)vector的内存的空间时连续的;而list的内存空间时不连续的。
- (3)vector支持数据的随机访问;而list不支持数据的随机访问。
- (4)vector在插入时如果空间不够才会自动申请新的空间的扩容,但容器中数据删除时不会释放空间;而list在每次插入和删除都会申请和释放空间。
- (5)vector在数据的插入或删除都可能会导致迭代器失效(插入或删除位置后面额迭代器全部失效);而list的在插入时不会导致迭代器失效,而在删除时会导致当前迭代器失效。
- (6)vector在删除和插入元素时会导致内存拷贝(插入位置之后的元素需要全部后移或删除位置的元素需要全部前移);而list不会。
- (7)vector适用于对容器中元素进行频繁的访问的情况;而list适用于对容器中元素进行频繁插入和删除的情况。
vector和list的区别
最新推荐文章于 2025-05-14 22:28:18 发布