Метод clear
Метод clear удаляет все элементы из вектора.
После вызова этого метода вектор становится пустым,
его размер (size) становится равным 0.
Метод не принимает параметров и не возвращает значения.
Важно отметить, что вместимость (capacity) вектора
при этом не изменяется - память, выделенная под элементы,
остается зарезервированной.
Синтаксис
vec.clear()
Пример
Давайте создадим вектор с числами и очистим его, проверив размер до и после вызова метода:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> vec = {1, 2, 3, 4, 5};
cout << "Size before: " << vec.size() << endl;
vec.clear();
cout << "Size after: " << vec.size() << endl;
return 0;
}
Результат выполнения кода:
"Size before: 5"
"Size after: 0"
Пример
Давайте проверим, что вектор стал пустым,
используя метод empty:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<string> vec = {"a", "b", "c", "d", "e"};
vec.clear();
if (vec.empty()) {
cout << "Vector is empty" << endl;
} else {
cout << "Vector is not empty" << endl;
}
return 0;
}
Результат выполнения кода:
"Vector is empty"
Пример
Давайте убедимся, что вместимость вектора после очистки не изменилась:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> vec = {1, 2, 3, 4, 5};
cout << "Capacity before: " << vec.capacity() << endl;
vec.clear();
cout << "Size after: " << vec.size() << endl;
cout << "Capacity after: " << vec.capacity() << endl;
return 0;
}
Результат выполнения кода:
"Capacity before: 5"
"Size after: 0"
"Capacity after: 5"