c++,stl,线性容器vector,string的size,capacity,push_back,reserve,resize函数的作用和相互影响

本文介绍了C++ STL线性容器如vector和string中的.size(), .capacity(), .push_back(), .reserve()和.resize()函数。.size()返回实际元素数量,随着数据操作变化;.capacity()表示容器最大容纳量,大于等于.size()。.push_back()增加元素,可能导致容器扩容;.reserve()预分配空间,仅扩容不缩容;.resize()直接调整容器大小,增加时使用默认构造函数,减少时不释放内存。" 129362233,17217181,Python-Django微信小程序校园跑腿系统开发详解,"['django', 'python', '课程设计', '微信小程序']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

c++,stl,线性容器vector,string的size,capacity,push_back,reserve函数的作用

以线性容器vector为例:

.size()函数的作用是:
返回当前容器中程序员给容器的数据个数,是容器中的数据量。

特点:
紧跟着程序员操作带来的的数据量改变而改变。
例如程序员定义了一个vector,然后push_back了5个数字进去,此时这个容器的size()返回值就是5,且size是从0开始,每push_back一次,size值紧跟着加一的。
程序员再push_back进去4个数,这个容器的size()返回值就是5+4=9;

在这里插入图片描述

capacity的作用是:
返回当前容器总体能容纳的最大数据个数,这个数程序员可以设定也可以不管,容器本身自己也会自动伸缩长度,是容器的容量。

特点:
1、capacity的值会大于等于size,
2、一个vector对象刚被定义出来时时capacity和size值都为0,
3、push_back后,size值会因push_back函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值