2013年4月25日
摘要: 关于STL容器,最令人称赞的特性之一就是是只要不超过它们的最大大小,它们就可以自动增长到足以容纳你放进去的数据。(要知道这个最大值,只要调用名叫max_size的成员函数。)对于vector和string,如果需要更多空间,就以类似realloc的思想来增长大小。这个类似于realloc的操作有四个部分:分配新的内存块,它有容器目前容量的倍数。在大部分实现中,vector和string的容量每次以2为因数增长。也就是说,当容器必须扩展时,它们的容量每次翻倍。把所有元素从容器的旧内存拷贝到它的新内存。销毁旧内存中的对象。回收旧内存。 给了所有的分配,回收,拷贝和析构,你就应该知道那些步骤都很昂贵 阅读全文
posted @ 2013-04-25 09:49 dhkdhk 阅读(107) 评论(0) 推荐(0) 编辑