C++ vector::shrink_to_fit()实例讲解

avatar
作者
筋斗云
阅读量:1

vector::shrink_to_fit()是C++标准库中vector容器的一个成员函数,用于将vector的容量调整为与其实际大小相匹配的最小值。该函数可以在删除了一些元素后,将容器的容量减小到与元素数量相等,从而节省内存空间。

以下是一个示例代码,演示了如何使用vector::shrink_to_fit()函数:

#include <iostream> #include <vector>  int main() {   std::vector<int> number = {1, 2, 3, 4, 5};      std::cout << "当前容量: " << number.capacity() << std::endl;      number.pop_back(); // 删除最后一个元素   number.pop_back(); // 删除倒数第二个元素      std::cout << "删除两个元素后的大小: " << number.size() << std::endl;      number.shrink_to_fit(); // 调整容器的容量与元素数量相匹配      std::cout << "调整容量后的大小: " << number.capacity() << std::endl;      return 0; } 

输出结果为:

当前容量: 5 删除两个元素后的大小: 3 调整容量后的大小: 3 

在这个示例中,我们创建了一个vector容器number,并初始化了5个整数元素。然后,我们使用pop_back()函数删除了最后两个元素,并打印了调整前后的容器大小和容量。最后,我们使用shrink_to_fit()函数将容器的容量调整为与元素数量相等。

需要注意的是,shrink_to_fit()函数并不保证一定会降低容器的容量,它只是一个建议。具体是否真正减小容量取决于具体实现。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!