练习3.12、3.13

3.12:下列vector对象的定义有不正确的吗?如果有,请指出来。对于正确的,描述其执行结果:对于不正确的,说明其错误的原因。

(a)vector<vector<int>> ivec;

(b)vector<string> svec=ivec;

(c)vector<string> svec(10,"null");

a)正确。定义一个int类型的对象,其中每个元素都是int类型的vector对象;

b)错误。不能将int类型vector对象,拷贝初始化string类型的vector对象,类型不匹配。

c)正确。定义一个string类型vector对象,让10个"null"去初始化它(svec)。

3.13:下列的vector对象各包含多少个元素?这些元素的值分别是多少?

(a)vector<int>v1;    (b)vector<int> v2(10);

(c)vector<int> v3(10,42);   (d)vector<int> v4{10};

(e)vector<int> v5{10,42}; (f)vector<string> v6{10};

(g)vector<string> v7{10,"hi"};

a)元素数量为0;

b)包含10个元素,其值都为0;

c)包含10个元素,其值都为42;

d)包含1个元素,其值为10;

e)包含2个元素,其值为10,42;

f)包含10个元素,其值都为空串。

g)包含10个元素,其值都为“hi”。

原文地址:https://www.cnblogs.com/Dark-King/p/9387799.html