C++ Daily《2》----vector容器的resize 与 reserve的区别
来源:互联网 发布:pyqt5 for windows 编辑:程序博客网 时间:2024/04/30 12:16
C++ STL 库中 vector 容器的 resize 和 reserve 区别是什么?
1. resize 改变 size 大小,而 reserve 改变 capacity, 不改变size.
2. vector内部其实包含了三个指针,
如下图:
resize()------改变 finish 指针
reserve()----改变 end_of_storage 指针
3. [finish, end_of_storage)中的内存是没有调用过vector中的元素的构造函数的。
所以, 如下的这段代码,其实是新开一段10个 Point 的内存,但是没有调用Point 的构造函数。
vector<Point> vec;vec.reserve(10);
此时的 vec.size() = 0. 而 vec.capaciy() = 10;
5 0
- C++ Daily《2》----vector容器的resize 与 reserve的区别
- vector容器成员函数resize与reserve的区别
- vector容器中resize与reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- vector.resize 与 vector.reserve的区别
- 用C#模拟 Java Bean (七) —— 里程碑的思考
- 深入了解Struts2返回JSON数据的原理及具体应用范例
- EXCEL:将SQL SERVER中的数据导入到 EXCEL
- SlidingMenu使用
- 工厂方法
- C++ Daily《2》----vector容器的resize 与 reserve的区别
- 修改apache得documentroot
- @class SEL IMP
- 3个优秀响应式设计网站推荐:电子商务、主题活动、科技资讯
- [基础]Android 应用的启动
- Objective-C 中的 Meta-class
- 初级链表,麻烦帮我看下问题出在哪?
- 解题报告之 字频统计
- VC让对话框显示就最大化 或固定尺寸