前言
C++STL中的vector有三个与容器大小相关的方法
- size
- max_size
- capacity
它们看着相似,实则彼此不同,且初学时容易混淆。
这篇文章将帮助您对它们进行理解和区分。
一、方法功能
1. size
size方法返回的是 当前 vector对象中 元素的个数。
刚刚初始化的空vector对象size的值为0。
2. capacity
capacity方法返回的是当前程序已经分配给该vector对象的内存大小(单位为元素个数)。
3. max_size
max_size方法返回的是当前程序最大可能可以容纳的元素个数。
二、理解区分
举个例子🌰
比方说这个vector容器是图书馆里的一个书架。
那么:
size
方法反应书架上已经放了多少书。
capacity
方法反应书架有多大。
max_size
方法反应最大可能可以在书房里放置一个多大的书架。
原创不易,感谢您的支持。
欢迎阅读我的另一篇文章,对vector进行更深入的了解→ vector 可变长数组 用法详解