1.vector就是一个不定长数组。
2.vector是一个模板类,所以需要用vector<int>a 或者vector<double> vt 这样的方式来声明一个vector。
3.vector可以直接赋值,还可以作为函数的参数或者返回值,而无须像传递数组那样另外用一个变量指定元素个数。
4.它把一些常用操作“封装”在了vector类型内部。例如,若a是一个vector,可以用:
a.size( )读取它的大小,
a.resize(整数)改变大小,
a.push_back(x)向尾部添加元素,
a.pop_back( )删除尾部最后一个元素,
a.clear( )清空
/**不定长数组:vector*/
#include<iostream>
#include<vector>//在此头文件中
#include<algorithm>
#include<cstring>
using namespace std;
vector<string> a;//定义不定长数组vector
int main()
{
string s;
while(cin>>s)
{
if(s[0]=='#')
break;
a.push_back(s);//向尾部添加元素
}
cout<<a.size()<<endl;//数组中元素的个数
for(int i=0;i<a.size();i++)//输出vector中的元素
{
cout<<a[i]<<endl;
}
a.resize(4);//改变它的大小
cout<<a.size()<<endl;
for(int i=0;i<a.size();i++)
{
cout<<a[i]<<endl;
}
a.push_back("aaaabbbbcccc");//向尾部添加元素
cout<<a.size()<<endl;
for(int i=0;i<a.size();i++)
{
cout<<a[i]<<endl;
}
sort(a.begin(),a.end()) ;//对vector中的元素进行排序
for(int i=0;i<a.size();i++)
{
cout<<a[i]<<endl;
}
a.clear();//清空
cout<<a.size()<<endl;
return 0;
}