似乎一个 vector 执行 clear 操作不释放内存,必须执行 shrink_to_fit 操作才会释放内存。
示例:
```cpp
vec.clear(); // 不释放内存
vec.clear(), vec.shrink_to_fit(); // 释放内存
```
by Fido_Puppy @ 2023-01-04 12:05:37
vector占用的空间不会减少(包括clear和erase等方式)除非它被析构
STL的容器都是这个破情况,改成这个应该就行了
```cpp
void myclear(vector<int> &_x){
vector<int> _y;
swap(_x,_y);
}
```
by Killer_joke @ 2023-01-04 12:06:06
并且光定义 `vector <int> t1[1000005], t2[1000005]` 占用的内存就挺大的。
by Fido_Puppy @ 2023-01-04 12:06:16
@[Fido_Puppy](/user/355448) 谢谢!已解决
本来试了 `resize` 也不行,现在明白了。
by XLao @ 2023-01-04 12:09:21
@[Killer_joke](/user/915814) 谢谢!
by XLao @ 2023-01-04 12:11:08