首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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-05-06
22
问题
有如下程序:
#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://kaotiyun.com/show/2Dfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列因素中,对C++编译器区分重载函数无任何意义的是
请打开考生文件夹下的解决方案文件proj1,其中定义了一个CD类。程序中位于每个//ERROR**********found**********下的语句行有错误,请加以更正,不得修改程序的其他部分。更正后程序的输出应该是:歌唱祖国30义
请打开考生文件夹下的解决方案文件proj1,其中在编辑窗口内显示的主程序文件中定义有Xabc类和主函数main。在程序文本中位于每行”//ERROR*********found*********下面的一行有错误,请加以更正。更正后程序的输出为:
下列程序的输出结果是()。#include<iostream>usingnamespacestd;template<typenameT>Tfun(Ta,Tb){return(a>=b)?a:b;}
有如下程序:#include#includeusingnamespacestd;intmain(){cout
有如下类定义classMyClasspublic:_________Private:intdata;};若要为MyClass类重载流输入运算符>>,使得程序中可以“cin>>obj;
有如下程序:#inc1ude<iostream>#inc1ude<iomanip>usingnamespacestd;intmain(){ints[]={123,234};cout<
有如下程序:classBase{public:intdata;};classDerivedl:publicBasef};};classDerived2:protectedBa
从工程管理角度看,软件设计一般分为两步完成,它们是()。
随机试题
精馏塔内的温度随易挥发组分浓度的增大而降低。
下列除哪项外,均是采录主诉所要求的内容()
()包括市场进攻、退出战略,价格策略、营销策略以及售后服务等。
以下关于风险管理部门的具体职责的说法,不正确的是()。
下列各项中,与净资产收益率计算相关的有()。
某病人验尿时发现尿中有血细胞,可能的原因是()。
识别下列音程、和弦。
非存款负债[南开大学2014研]
记忆材料在系列中的位置会对识记和回忆产生影响,这种影响叫()
Pregnantwomenwhosufferlapses(忘却)inmemoryorconcentrationmaynolongerbeabletoblameiton"thebump".Theideathatbe
最新回复
(
0
)