c++如何快速清空vector以及释放vector内存?

  • Post category:other

以下是“C++如何快速清空vector以及释放vector内存”的完整攻略:

C++如何快速清空vector以及释放vector内存

在C++中,vector是一种非常常用的容器,但是在使用过程中,可能会出现需要清空vector或释放vector内存的情况。本攻略将介绍如何快速清空vector以及释放vector内存。

方法1:使用clear()函数

vector类提供了一个名为clear()的函数,可以用于清空vector中的所有元素。以下是一个示例:

#include <iostream>
#include <vector>

using namespace std;

int main() {
  vector<int> v = {1, 2, 3, 4, 5};
  v.clear();
  cout << "Size of vector after clear(): " << v.size() << endl;
  return 0;
}

在该示例中,我们使用clear()函数清空了vector中的所有元素,并输出了vector的大小。

方法2:使用swap()函数

vector类还提供了一个名为swap()的函数,可以用于交换两个vector对象的内容。通过将一个空的vector对象与原始vector对象交换,可以释放原始vector对象的内存。以下是一个示例:

#include <iostream>
#include <vector>

using namespace std;

int main() {
  vector<int> v = {1, 2, 3, 4, 5};
  vector<int>().swap(v);
  cout << "Size of vector after swap(): " << v.size() << endl;
  return 0;
}

在该示例中,我们使用swap()函数将一个空的vector对象与原始vector对象交换,从而释放了原始vector对象的内存,并输出了vector的大小。

注意事项

以下是使用clear()和swap()函数时需要注意的事项:

  • clear()函数只会清空vector中的元素,但不会释放vector的内存。
  • swap()函数可以释放vector的内存,但是需要注意交换的对象必须是一个空的vector对象。

希望这些方法和示例能帮助您快速清空vector以及释放vector内存。