vector resize reserve区别
2016-03-09 15:41
204 查看
摘自effective stl
resize 强迫容器改变到包含n个元素的状态。在调用resize之后,size返回n。如果n比党钱大小要小,则容器尾部的元素将会被析构。如果n比当前的大小要大,则通过默认构造函数创建的新元素将被添加到末尾。如果n比当前的容量要大,那么在添加元素之前,将先重新分配内存
reserve 强迫容器把他的容量变为至少是n,前提是n不小于当前的大小。这通常会导致重新份额破,因为容量需要增加(如果n比当前的容量小,则vector忽略改条用,什么也不做;而string则可能把自己的容量减为size()和n的最大值,但是string的大小肯定保持不变)
resize 强迫容器改变到包含n个元素的状态。在调用resize之后,size返回n。如果n比党钱大小要小,则容器尾部的元素将会被析构。如果n比当前的大小要大,则通过默认构造函数创建的新元素将被添加到末尾。如果n比当前的容量要大,那么在添加元素之前,将先重新分配内存
reserve 强迫容器把他的容量变为至少是n,前提是n不小于当前的大小。这通常会导致重新份额破,因为容量需要增加(如果n比当前的容量小,则vector忽略改条用,什么也不做;而string则可能把自己的容量减为size()和n的最大值,但是string的大小肯定保持不变)
相关文章推荐
- 使用Unity发布第一个程序时遇到的问题
- Tcp
- C#第七节课
- Oracle 截取字符串,取系统时间
- 协议(protocol)与网络协议
- Android 6.0 新特性(官方文档翻译)
- php session过期时间设置,纯新手教学
- 第一场
- MSMQ 跨服务器读写队列的“消息队列系统的访问被拒绝”的解决方案
- 表示数值的字符串
- Makefile学习笔记(一):Windows平台(转载)
- Collection 和 Collections的区别
- 2016年3月
- 《基于MFC的OpenGL编程》Part 0 基于MFC的OpenGL基本框架
- 读书笔记---HTML5实战 MARCO CASARIO(前六章)
- windows7上安装php7和apche2.4
- lstm-思想2
- 数据库排错与mysql_install_db重新实例化数据库
- 第一次课程作业(3月7日)
- 欠一篇博客