一:上码演示
1:清空元素但其原来的元素还在
#include<bits/stdc++.h>
using namespace std; int main(){vector <int> vecInt;for (int i=0;i<500;i++){vecInt.push_back(i);}int j= vecInt.capacity(); //j=512int i = vecInt.size(); //i=500 vecInt.clear();int j1= vecInt.capacity(); //j=512int i1 = vecInt.size(); //i=0 for(int i = 0; i < 5; i++){cout << vecInt[i] << ' '; }
}
这里虽然清空了元素,但其原来的元素依然在
2:验证新添加的元素会在下标为0的位置开始
毕竟我们之所以会清空元素,也就是为了从下标为0的位置开始‘
#include<bits/stdc++.h>
using namespace std; int main(){vector <int> vecInt;for (int i=0;i<500;i++){vecInt.push_back(i);}int j= vecInt.capacity(); //j=512int i = vecInt.size(); //i=500 vecInt.clear();int j1= vecInt.capacity(); //j=512int i1 = vecInt.size(); //i=0 //清空后赋值会从下标为0时候开始,但如果不添加数据还是会显示原来的数据 int a = 10;int b = 11;vecInt.push_back(a);vecInt.push_back(b);for(int i = 0; i < 5; i++){cout << vecInt[i] << ' '; }
}
我们新添加的10 和 11 在下标为0和1的地方显示出来了,即便原来的元素还在,但完全不影响 我们的接下来的操作