vector清空操作
清空vector可以通过clear函数或者通过swap来进行清空操作,但这两个又有所不同。
clear清空vector
vector<int> vecClear;
vec_softinfo.clear();
这种方法直接清空 vecClear 变量,将其元素数量设置为零,但保留其内存。这意味着 vecClear 的容量不会改变,只是元素被清除了,可以重用已分配的内存来存储新的元素。
swap清空vector
vector<int> vecClear;
vecClear.swap(vector<int>());
这种方法通过交换空的临时变量与 vecClear 变量来实现清空。这个方法会导致 vecClear 的内存被释放,并且在交换后,vecClear 将成为空变量。这种方式适用于需要释放 vecClear 所占用的内存的情况。
总结
通常情况下,如果希望及时释放 vecClear 所占用的内存并且不再需要重用该向量,那么使用 vecClear.swap(vector