#include <bits/stdc++.h>
using namespace std;
vector<int> a;
int main(){
// 1.插入元素
a.push_back(1);
a.push_back(2);
a.push_back(1);
// 2.删除末尾元素
a.pop_back(); // (删除末尾元素 )
a.erase(a.begin()); // (删除指定,内部迭代器,只能删除一个)
// 3.查询指定元素(返回的是迭代器)
cout << a[find(a.begin(), a.end(), 2) - a.begin()] << '\n';
// 4.排序
sort(a.begin(), a.end());
// 5.反转
reverse(a.begin(), a.end());
// 6.二分函数
cout << (lower_bound(a.begin(), a.end(), 2) - a.begin())<< '\n';
// 7.遍历
for(auto i: a){
cout << i << " ";
}
return 0;
}
如果想像静态数组一样输入,就得在定义的时候写明容器的元素个数
#include <bits/stdc++.h>
using namespace std;
vector<int> a(1); // 1个元素
int main()
{
cin >> a[12];
cout << a[12];
return 0;
}
ps: 似乎只有vector和静态数组的 reverse(),find(),lower_bound() 的调用不是用"对象名.函数名"。