vector resize & reserve
来源:互联网 发布:立健亭止咳药水 知乎 编辑:程序博客网 时间:2024/06/05 11:01
首先必须弄清楚两个概念:
1.capacity
指容器在分配新的存储空间之前能存储的元素总数。
2. size
指当前容器所存储的元素个数
在弄清这两个概念以后,很容易懂resize和reserve的区别
1).reserve表示容器预留空间,但并不是真正的创建对象,需要通过insert()或push_back()等创建对象。
resize既分配了空间,也创建了对象。
2).reserve只修改capacity大小,不修改size大小,resize既修改capacity大小,也修改size大小。
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, char *argv[])
{
vector <int> wgw;
cout << "initilize size is: " << wgw.size() << endl;
cout << "initilize capacity is :" << wgw.capacity() <<endl;
wgw.reserve(100);
cout << "wgw size is: " << wgw.size() << endl;
cout << "wgw capacity is :" << wgw.capacity() <<endl;
vector <int>wgw1;
wgw1.resize(200);
cout << "wgw1 size is :" << wgw1.size()<<endl;
cout << "wgw1 capacity is:" << wgw1.capacity() <<endl;
return 0;
}
3).两者的形参个数不一样。
resize带两个参数,一个表示容器大小,一个表示初始值(默认为0)
reserve只带一个参数,表示容器预留的大小。
- vector::reserve && vector::resize
- c++ vector resize & reserve
- vector resize & reserve
- c++ vector resize & reserve
- vector resize reserve区别
- stl vector resize reserve
- c++ vector resize & reserve
- Vector::reserve与Vector::resize
- vector resize和reserve区别
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- vector的reserve和resize
- Codeforces 460C —— Present(二分答案)
- 关于ios开发中遇到thread 1:exc_bad_access(code=1,address=0x50000010)类似的问题
- poj 1159 Palindrome ( dp 滚动数组 )
- hdoj 2095 find your present (2) 【位运算】
- Caused by: java.lang.IllegalArgumentException: the bind value at index 1 is null
- vector resize & reserve
- uva 1592
- ASP.NET MVC RedirectToRoute类
- hive 简单操作搜狗实验室的词频文件
- Android开发项目经验
- ToggleButton的使用,RadioGroup的使用和监听,
- Java线程面试题Top50
- 程序员(码农)的转身之道
- mvn依赖