C++中vector容器大小增长规律大全
发布时间:2021-12-10 14:57:39 所属栏目:语言 来源:互联网
导读:问:vector大小是如何增长的? 答:自动增长的 问:增长规律是? 答: 。。。。。。 ASP站长网 那么, 今天就来探究一下vector容器的大小增长规律: vector中得
问:“vector大小是如何增长的?” 答:“自动增长的” 问:“增长规律是?” 答: 。。。。。。 ASP站长网那么, 今天就来探究一下vector容器的大小增长规律: vector中得到大小的的函数有以下几个 方法 作用 size() 返回容器的大小 empty() 判断容器是否为空 max_size() 返回容器最大的可以存储的元素 capacity() 返回容器当前能够容纳的元素数量 测试用代码: #include <iostream> #include <vector> using namespace std; int main() { int N = 9; vector<char> aa; for(int i= 0; i < N; i++) { aa.push_back('f'); //输出当前容量 cout << aa.capacity() << endl; } } i capacity 0 0 1 1 2 2 3 4 4 4 5 8 6 8 7 8 8 8 9 16 … … 可以看出,当分配的空间不够的时候,容器的空间将以指数倍数增加。 当空间不够用时,它会进行以下操作: 1、寻找更大空间 2、将原数据复制过去 3、释放原空间 这些操作会影响到程序运行的效率,所以reserve()操作(提前分配一定量的内存)来避免不必要的重新分配是很有必要的。 (编辑:焦作站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |