c++vector归零
时间: 2023-10-23 18:13:55 浏览: 48
要将C++的vector归零,可以采用以下几种方法:
方法1:使用clear()函数来清空vector,并将其大小设置为0。
方法2:使用erase()函数循环删除vector中的元素,直到vector为空。
方法3:使用swap()函数将一个空的vector与原vector进行交换,从而释放原vector的内存。
相关问题
C++ vector API
以下是C++ vector的一些常用API:
1. push_back():在vector的末尾添加一个元素。
```c++
vector<int> vec;
vec.push_back(1); // 添加元素1
```
2. pop_back():删除vector的末尾元素。
```c++
vector<int> vec = {1, 2, 3};
vec.pop_back(); // 删除元素3
```
3. size():返回vector中元素的个数。
```c++
vector<int> vec = {1, 2, 3};
cout << vec.size() << endl; // 输出:3
```
4. empty():判断vector是否为空。
```c++
vector<int> vec;
if (vec.empty()) {
cout << "vector is empty" << endl;
}
```
5. clear():清空vector中的所有元素。
```c++
vector<int> vec = {1, 2, 3};
vec.clear(); // 清空vector
```
6. insert():在vector的指定位置插入一个元素。
```c++
vector<int> vec = {1, 2, 3};
vec.insert(vec.begin() + 1, 4); // 在位置1插入元素4
```
7. erase():删除vector中指定位置的元素。
```c++
vector<int> vec = {1, 2, 3};
vec.erase(vec.begin() + 1); // 删除位置1的元素2
```
8. resize():改变vector的大小。
```c++
vector<int> vec = {1, 2, 3};
vec.resize(5); // 将vector的大小改为5,多出的元素用默认值0填充
```
c++ vector库函数
C++中的vector是一个动态数组,它提供了许多有用的库函数。以下是一些常用的vector库函数:
1. push_back()函数:将元素添加到vector的末尾。
```c++
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
```
2. pop_back()函数:删除vector的最后一个元素。
```c++
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.pop_back();
```
3. size()函数:返回vector中元素的数量。
```c++
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
cout << v.size() << endl; // 输出:3
```
4. clear()函数:删除vector中的所有元素。
```c++
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.clear();
```
5. insert()函数:在vector的指定位置插入元素。
```c++
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.insert(v.begin() + 1, 4); // 在第二个位置插入4
```
6. erase()函数:删除vector中的指定元素。
```c++
vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);
v.erase(v.begin() + 1); // 删除第二个元素
```
7. swap()函数:交换两个vector的元素。
```c++
vector<int> v1(10, 8);
vector<int> v2(10, 6);
v1.swap(v2);
```
8. operator=运算符:将一个vector赋值给另一个vector。
```c++
vector<int> v2(10,6);
vector<int> v3 = v2;
```