清空C++ vector最常用方法是clear(),它使size变为0但不释放内存;若需释放内存,可使用shrink_to_fit()、swap技巧或赋值为空vector。

清空一个 C++ vector 的最常用方法是使用 clear() 函数。这个函数会移除 vector 中的所有元素,使其大小变为 0,但不会释放其内部缓冲区的内存。
1. 使用 clear() 方法
这是最直接的方式:vec.clear(); —— 删除所有元素,size 变为 0。
示例代码:
std::vector
vec.clear(); // 此时 vec.size() 为 0
2. 清空并释放内存( shrink_to_fit )
调用 clear() 后,vector 的容量(capacity)可能仍然保留之前的值。如果希望同时释放内存,可以配合使用 shrink_to_fit():
vec.clear();
vec.shrink_to_fit(); // 请求释放未使用的内存
3. 使用 swap 技巧(传统方法)
在 C++11 之前,常用 swap 来强制释放内存:
std::vector
4. 赋值为空 vector(C++11 起新写法)
也可以直接赋值一个空的初始化列表:vec = {};
或
vec = std::vector
基本上就这些。日常使用 clear() 就够了;若需节省内存,推荐 clear() + shrink_to_fit() 或 swap 方法。











