-
1 书中有错误。
2.答案是c
c.在基类中解释了虚函数之后,派生类中对应于它的函数不必被描述为虚函数(我不明白这一点)。
这就是虚函数的特征,只要派生类的函数与基类的函数具有相同的名称和原型,它就自动是一个虚函数,d派生类的虚函数具有与基类的虚函数不同的参数和类型数(对此进行了解释)
如果它具有相同的名称和不同的参数(不同的原型),则这是一个重载函数,而不是一个虚拟函数。
3.答案是d
a.它可用于动态创建对象和对象数组。
这句话是真的,这首先是NEW的作用。
d.使用它创建对象数组时,必须指定初始值。
这不是真的,在创建对象数组时不能指定初始值,只能使用默认构造。
4.在下面的结构定义中,(b)是不正确的。 没错。
13.在以下存储的标识符中,(a) 的可见性和存在性不一致。 答案是 c,当它们不可见时,只剩下内部静态类。
a.外部等级 b自动类。
c.内部静态 d 类寄存 器。
-
问题 1a
带有 const void print() 的 c 选项; 是一个意思,const 修饰返回值,它没有意义。
-
您可以在创建对象数组时指定初始值!!
-
2 简单地说,double 兼容所有类型。
3 值得注意的是,if 语句后没有括号,这意味着 if 语句只包含第一句 z=x; 以下不是 if 语句的作用域。
4 whlie(int i=0 )i--;这定义了 i 并同时分配 0,while(0) 直接退出循环。 所以运行次数为 0
7.如果初始化次数不足,有初始值,则加0; 如果没有分配初始值,则它都是随机的。
8 数组中的参数数并不表示参数的数目,可以根据任意参数的数目赋值 这句话是真的,最终数组中的元素数由赋值的初始值决定,字符串多了一个'0'。
15 实际上,在这种情况下,fa 和 p 是等价的,abc 是一样的,而 d 的答案是毫无意义和错误的。
-
2.当计算不同类型的参数时,自动转换为更长字节的参数类型的判断不加{},所以只有下一句中的第一句z=x为真,后两句与判断无关。
其中一个 true 条件不是 0,如果在此处设置 i=0,则为 false,并且您不想循环。
7.默认值为 0。
8.如果未指定参数数,则根据初始值自动分配参数数。
15.p++ 中 ++ 的优先级高于 *,表示指针地址为 +1,然后取值。
-
2.转换多种类型时,默认转换从小到大。 这里的双倍是最大的。 (因为大的会丢失,小的会丢失,小的会输给大的,只是一点点空间)。
条件判断执行类似 if( ...如果是这种情况,如果满足条件,则执行 {} 中的内容,如果没有 {},则 if 条件将受到紧接在 if 条件之后的句子的影响。 换句话说,如果在这个问题中只影响句子 z=x。
退出是因为 while 里面的条件是 false,这时候我们第一次执行 while 字的时候,我们先知道我们设置了 int i=0,然后再看 while(int i=0),这种 0 是 false,所以 while 条件是 false,并且 in-while 语句没有执行, 也就是说,它不会循环。
7.呃:我觉得你对二维数组的理解有点问题。 当我们成对赋值时,默认赋值的二维数组 d[3][2],也就是说,它就像三个大小为 2 的一维数组,这个问题中的赋值方法类似于 a[10]=; 这个任务。
8.你的理解是正确的,如果把数组的定义和初始化一起写成这样,在这种情况下就等价于你=下面的数据告诉前面的大小。
15.这是函数指针的问题。 我不明白函数指针的问题,但似乎是d的错误。
希望对你有所帮助。
-
2 只有当有更高级别的参数参与计算时,最高级别的 3 if 语句之后的结果为 z=x; 没有执行,但 x=y; 执行,因此 x 值最终为 20
4 将被执行 0 次。
7 如果你不填写也没关系,系统会随机分配一个值。
8d中有两个字符串,但是只给出了一个字符串,如果去掉逗号,你仍然可以15只有d不好,b等价于a,它仍然是合法的。
-
C++ 我曾经学习过,但忘记了很多。
第一个 awhile(leap) 条件是 leap 是否为 true(如果 leap 不是 0,则为 true,如果为 0,则为 false)。 >>>More