C++中vector自定义大小

1.vector指定大小(前者必须是定义vector时)

vector<int>vc(5);//size为5,值默认为0 
cout<<vc.size()<<endl;
for(int i=0; i<vc.size(); i++)
    cout<<vc[i];
vector<int>vc;
vc.resize(5); //size为5,值默认为0

2.指定大小并赋相同初值(前者必须是定义vector时)

vector<int>vc(5,9); //size为5,初值为9 
cout<<vc.size()<<endl;
for(int i=0; i<vc.size(); i++)
    cout<<vc[i];
vector<int>vc;
vc.resize(5,9);

3.二维vector指定大小

vector<vector<int> >vc(5);//指定行数
for(int i=0; i<vc.size(); i++)
    vc[i].resize(i);    //指定列数(每行列数可以不同) 
    //vc[i].resize(i,9);//指定列数并对该行赋相同初值
vector<vector<bool> >inq;
vector<bool> tmp(m, false);
inq.resize(n, tmp);//nxm,值全为false
vector<vector >inq(n, vector(5));

注意:指定大小后,范围内的元素要么默认是0,要么指定元素,此时紧接着push_back将在vc[size]处尾插。

注意:上述代码使用resize仅是用来初始化,并未介绍详细用法。

C++指定vector的大小(一维和二维)

一维

不指定vector的大小

vector<int> vec;

指定vector的大小

//vec的长度是5,也就是vec.size()=5
vector<int> vec(5);

二维

不指定vector的大小

vector<vector<int>> vec;

指定vector的大小

//创建一个长度为5的vector
vector<int> temp(5);
//创建二维数组,5列5行的二维vector
vector<vector<int>> vec(5,temp);