首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class CC{ int k; public: CC(int n):k(n){ }
有如下程序: #include using namespace std; class CC{ int k; public: CC(int n):k(n){ }
admin
2021-06-10
20
问题
有如下程序:
#include
using namespace std;
class CC{
int k;
public:
CC(int n):k(n){ }
int get()const{ return k; }
};
int main(){
CC c[3]={CC(1),CC(2)};
return 0;
}
此程序编译时未能通过,原因是
选项
A、数组只能定义为基本数据类型
B、类 CC 缺少复制构造函数
C、对象数组只能作为类的数据成员
D、类 CC 缺少默认的构造函数
答案
D
解析
对象数组无论在哪里定义,都需要自动调用该对象元素的类的默认构造函数进行初始化,如果该类没有默认构造函数,必须为数组的元素提供显式初始化;程序中定义了对象数组c,它包含了三个元素,前两个元素使用构造函数CC(int n)显式初始化,最后一个元素需要使用默认构造函数初始化,由于类CC中已经定义了构造函数,所以编译器不会自动生成默认的构造函数,缺少默认构造函数导致对象数组c的第三个元素无法完成初始化,编译错误;答案为D。
转载请注明原文地址:https://jikaoti.com/ti/HQh0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下函数定义:voidfunc(inta,int&b){a++;b++;}若执行代码段:intx=0,y=1;func(x,y);则变量x和y的值分别是()。
下列叙述中正确的是()。
函数swap(a,n)可完成对a数组从第1个元素到第n个元素两两交换。其中b[0]=1;b[1]=2;swap(h,2)。在运行调用函数中的语句后,b[0]和b[1]的值分别为()。
请使用菜单命令或直接用VC6打开考生文件夹下的工程prj03。请完善下列程序,实现一个Number类。Add函数计算2个Number类对象之和,并将和作为Number对象返回。这2个Number对象中各包含一个用字符串表示的10进制正整数,均不超过int的
执行下列语句段后,输出字符“*”的个数是()。for(inti=50;i>1;I-=2)cout
下列字符串中可以用作C++标识符的是()。
一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是()。
已知主函数中通过如下语句序列实现对函数模板swap的调用:inta[10],b[10];swap(a,b,10);下列对函数模板swap的声明中,会导致上述语句序列发生编译错误的是()。
随机试题
某企业生产产品经过两道工序,工时定额分别为30小时和40小时,则第二道工序在产品的完工率约为【】
对临床预防医学理解正确的是
对于DR和CR的说法错误的是
砌墙用的砂浆强度一般应不低于()。
在新材料应用方案的选择过程中,通常把( )作为主要评价原则。
在建工程试车形成的对外销售产品取得的收入应确认其他业务收入。()
巧克力是受人青睐的美食,下列关于巧克力说法错误的是:
毛泽东思想是马克思列宁主义的基本理论与中国革命具体实践相结合的产物,是马克思主义中国化的第一个重大理论成果。中国共产党自成立起,就以马克思列宁主义为指导,开始了全新的中国革命。以毛泽东为主要代表的中国共产党人,根据马克思列宁主义的基本理论,把中国革命实践中
UML的词汇表包含3种构造块,但不包括下面的(52);UML中有 4种事物,但不包括下面的(53);UML中有4种关系,但不包括下面的(54)。
Johnwasinanurseryschoolforoneyear.
最新回复
(
0
)