C++中初始化: vector<int> nums(4,{(1,4)}); 这是什么方式的初始化?
nums中值现在是什么?这句之后还有一句:for(inti=0;i<4;i++)nums[i]=i+1;现在nums中是[1.2.3.4]吗?...
nums中值现在是什么?
这句之后还有一句:
for (int i = 0; i < 4; i++)
nums[i] = i + 1;
现在nums中是[1.2.3.4]吗? 展开
这句之后还有一句:
for (int i = 0; i < 4; i++)
nums[i] = i + 1;
现在nums中是[1.2.3.4]吗? 展开
2个回答
展开全部
vector<int> nums(4,{(1,4)});
1、 向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。
2、nums可以看成数组,那么接下来就好办了。由这句nums(4,{(1,4)})可以看出:第一个4是数组大小,{}内为赋值数值。声明数组nums的大小为4,并对其第一、二个元素进行赋值为1、4,其余2个元素没有显性赋值,那么会按照用默认为0的规则补齐,那么数组nums赋值后的结果为:{1 4 0 0}。这种方式是将声明和赋值结合起来,一步到位,让程序初始化更快速。
3、接下来这句:for (int i = 0; i < 4; i++) nums[i] = i + 1;是对数组nums重新赋值。假设这句for语句设计没问题的话,执行这句for语句后,数组nums原赋值数将被覆盖,原赋值数已无意义,覆盖后数组nums元素的值为:{1 2 3 4}。
1、 向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。
2、nums可以看成数组,那么接下来就好办了。由这句nums(4,{(1,4)})可以看出:第一个4是数组大小,{}内为赋值数值。声明数组nums的大小为4,并对其第一、二个元素进行赋值为1、4,其余2个元素没有显性赋值,那么会按照用默认为0的规则补齐,那么数组nums赋值后的结果为:{1 4 0 0}。这种方式是将声明和赋值结合起来,一步到位,让程序初始化更快速。
3、接下来这句:for (int i = 0; i < 4; i++) nums[i] = i + 1;是对数组nums重新赋值。假设这句for语句设计没问题的话,执行这句for语句后,数组nums原赋值数将被覆盖,原赋值数已无意义,覆盖后数组nums元素的值为:{1 2 3 4}。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询