vector<vector<int>>b实例化一个名为b的vector。这个vector当中存得是一系列的vector<int>。实例化的同时,在b里面放入一些默认值。总共放入a[0].size()个默认值,默认值的内容是vector<int>(a.size()),即一个长度为a.size(),里面值都填充为0的vector<int>。可以把b想象成一个表,它有a[0...
int _tmain(int argc, _TCHAR* argv[]) { //int型vector,包含3个元素 vector<int> vecIntA; //插入1 2 3 vecIntA.push_back(1); vecIntA.push_back(2); vecIntA.push_back(3); int nSize = vecIntA.size(); cout<<"vecIntA:"<<endl; //打印vectorA,方法一: for(int i=0;i<nSize;i+...
sizeof操作符作用于vector上输出的是vector对象本身的大小,而不是数组数据占用的空间大小,数组数据有另外...
在使用vector时,涉及到了统计vector的元素个数,本应该使用.size(),但一开始由于记错用法了,犯了个很低级的错误,竟然使用了sizeof。后来竟然发现一个奇妙的地方。int型数据的大小是4,本以为会输出10和40,或者是10和4,但事实输出的是10和16!!! 1ector<int> res_int1(10,1);2cout << res_int1.size() ...
前面的vector是一个集合类型类似list,vector<int>就是泛型,就是这个集合里只能有int类型
最好不要。容器的size_type为了能表示足够大的范围大多都是unsigned类型的整数,在unsigned整型变量与signed整型做算术和逻辑运算时,signed变量会自动转换成unsigned变量,所以会产生一些难以预料的结果。比如:int n = -1;if (n < ivec.size())cout << "n is smaller";else cout << "n is ...
int max_size() const:返回最大可允许的vector元素数量值 7.其他函数 void swap(vector&):交换两个同类型向量的数据 void assign(int n,const T& x):设置向量中前n个元素的值为x void assign(const_iterator first,const_iterator last):向量中[first,last)中元素设置成当前向量元素 ...
返回此向量中的组件数。
vector<int> vec; for (int i = 0; i <= vec.size() - 1; i++) { vec[i] } 这里会有个隐藏问题,当vec的size为0时,因为size()函数的返回值是无符号整型,这时vec.size() - 1是一个正数,导致vec[i]的访问越界 所以写i<size() 不要写<=size()-1...
size_type 相当于 unsigned int类型 使用size_type 主要是为了适应不同的平台 int 类型大小会根据不同平台而不同