📅  最后修改于: 2020-09-04 08:57:58             🧑  作者: Mango
std :: vector在堆上分配一个内存,并将其所有元素存储在连续的内存位置。
但是,如果最初分配的内存被完全填满怎么办?
例如,让我们创建一个整数向量,即std :: vector
当std :: vector的内部存储器完全完成时,它将增加其存储器的大小。为此,它执行以下步骤,
您可以使用Capacity()成员函数检查向量的当前容量,即它可以在当前分配的内存中存储多少元素。
要检查std :: vector中当前存储的元素数,可以使用size()成员函数。
#include
#include
struct Sample
{
Sample(){}
Sample(const Sample & obj)
{
std::cout<<"Sample copy constructor"< vecOfInts;
std::cout<<"Capacity :: "<
输出打印如下:
Capacity :: 0
Size :: 0
Sample copy constructor
Capacity :: 1
Size :: 1
Sample copy constructor
Sample copy constructor
Capacity :: 2
Size :: 2