std::deque<T,Allocator>::shrink_to_fit
void shrink_to_fit(); |
(C++11 起) | |
请求移除未使用的容量。
它是减少使用内存而不更改序列的大小非强制性请求。请求是否达成依赖于实现。
所有迭代器和引用都被非法化。尾后迭代器亦被非法化。
参数
(无)
类型要求 | ||
-T 必须满足可移动插入 (MoveInsertable) 的要求。
|
返回值
(无)
复杂度
至多与容器大小成线性。
注解
若 T
的移动构造函数以外的操作抛出异常,则无效果。
示例
运行此代码
#include <deque> int main() { std::deque<int> nums(1000, 42); nums.push_front(1); nums.pop_front(); nums.clear(); // nums 现在不含项目,但它仍保有分配的内存。 // 调用 shrink_to_fit 可能会释放任何不使用的内存。 nums.shrink_to_fit(); }
参阅
返回容纳的元素数 (公开成员函数) |