vector的resize和reserve原理

2015-03-04 17:20:00
admin
原创 2122
摘要:vector的resize和reserve原理、定义、使用场合、附件下载

一、定义

vector模板类一般有以下三个成员_Myfirst、_Mylast、_Myend:

1、_Myfirst指向内存的起始位置;

2、_Mylast指向存储元素的结束位置;

3、_Myend指向内存的结束位置;

4、size == _Mylast - _Myfirst,resize最终改变的是这个size;

5、capacity == _Myend - _Myfirst,reserve最终改变的是这个capacity;


二、使用场合

1、频繁插入元素,可以先进行resize(初始化元素)或reserve(不初始化元素),避免频繁的内存分配和回收;

2、size远小于capacity,并且容器大小修改频率很低,使用shrink_to_fit使size==capacity节约内存;


三、附件下载

vector_resize_reserve.cpp

    发表评论
    评论通过审核之后才会显示。