首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

容器的有关问题

2012-02-27 
容器的问题1.容器中交换两个容器的swap的实现是不是只是更改了两个容器的名字的映射关系并没有真正的交换

容器的问题
1   .容器中交换两个容器的   swap   的实现   是不是只是更改了两个容器的名字的映射关系
      并没有真正的交换两个容器的值(内存上的交换)


2.deque   与   vector   最大的差别是不是   在插入和删除元素的时候   vector不管操作元素所在位置     直接移动后面的元素  
而   deque     则更具操作元素所在位置   是靠前还是靠后   来决定   移动前面元素还是后面的元素

[解决办法]
1是
2vector内存连续,deque则多个小数组拼起来的。
[解决办法]
vector大致是这样的。先在堆上分配一块(如16个元素大小)的内存。然后,当push_back满16个时,就再分配1倍内存,并且将原16个,和新的第17个放在新内存上,释放老的那块16个的内存。同理,push_back 第33个元素时,再次这样进行。

deque大致是把内存分成前中后三块,独立分配。因此,push_front支持的比较好。

热点排行