我是靠谱客的博主 不安小伙,最近开发中收集的这篇文章主要介绍vector中size()和capacity()的区别,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

#include <vector>
#include <iostream>
int main()
{
using namespace std;
vector <int> v1(10);
cout <<"初始化时,使用capacity函数获取v1的大小:"<< v1.capacity() << endl;
cout <<"初始化时,使用size函数获取v1的大小:"<< v1.size() << endl;
v1.push_back(1);
cout << "添加一个元素之后capacity函数获取v1的大小:" << v1.capacity() << endl;
cout << "添加一个元素之后size函数获取v1的大小:" << v1.size() << endl;
}

运行此代码之后,在初始化时,size和capacity获取的大小相同,均为10。
在添加一个元素之后,size函数和capacity函数获取的数值为11/15。
原因在于size是指容器当前拥有元素的个数,而capacity是指容器在必须分配新的存储空间之前可以存放的元素总数。
当添加的元素超出初始化时分配的空间时,vector容器会重新分配空间,以保证容器运行的效率,此中案例多分配了5个空间(不同编译器结果不同),所以capacity函数显示为15。
而容器中的元素为11,所以size函数返回的11,此为两种函数的区别。

最后

以上就是不安小伙为你收集整理的vector中size()和capacity()的区别的全部内容,希望文章能够帮你解决vector中size()和capacity()的区别所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部