正确答案: B
如果没有定义缺省的构造函数,编译器将一定生成一个缺省的构造函数
题目:对于一个类定义,下列叙述中错误的是( )。
查看原题
举一反三的答案和解析:
[单选题]下面关于友元函数的叙述中,不正确的是( )。
一个友元函数可以访问任何类的任何成员
[单选题]设X=100,Y=200,G="X+Y",则表达式5+&G的值是______。
305
解析:解析:表达式5+&G的计算过程为:5+&G→5+X+Y→5+100+200→305。所以,表达式5+&G的值是305。
[单选题]下面描述中体现了抽象类特性的语句是
不能定义对象
解析:解析:抽象类指的是类中至少有一个纯虚函数,纯虚函数是虚函数后有“=0”修饰,表示该函数在本级类中没有实现,类仅用于派生。抽象类存在的唯一目的就是构造类层次,派生出其他类。抽象类与其他类的最大区别就在于抽象类不能实例化。
[单选题]计算机能直接执行的程序是( )。
可执行程序
解析:D。【解析】由高级语言编写的程序称为“源程序”;由二进制代码表示的程序称为“目标程序”;由汇编语言编写的程序称为“汇编程序”。对于计算机本身来说,它只能接收和处理由0到1的代码构成的二进制指令和数据。所以计算机能识别的程序是“目标程序”。而计算可以直接执行的程序是可执行程序,即后缀为.exe的程序。
[单选题]在下列关于关系表达式运算的叙述中,正确的一条说法是____。
关系运算符在运算顺序上没有优先之分,总是先到先算
[单选题]若有定义:int a[4][10];,则以下选项中对数组元素a[i][j]引用错误的是______。 (0=i4,0=j10)
*(a+i)+j
解析:解析:本题中选项B是错误的引用,*(a+i)+j只代表了a[i][j]的地址。
[单选题]有以下程序 main( ) { int a[ ][3]={{1,2,3},{4,5,0}},(*pa)[3],i; pa=a; for(i=0;i<3;i++) if(i2) pa[1][i]=pa[1][i]-1; else pa[1][i]=1; printf("%d\n",a[0][1]+a[1][1]+a[1][2]); } 执行后输出结果是
7
解析:解析:第一次执行for循环,p[1)[0]=p[1)[0]-1=3;第二次,p[1][1]=p[1][1]-1=4;第三 次,p[1][2]=1。所以表达式a[0][1)+a[1][1]+a[1][2]=7。
[单选题]在16位IBM-PC机上使用C语言,若有如下定义 struct data { int i; char ch; double f; } b; 则结构变量b占用内存的字节数是
11
解析:解析:结构体变量所占用内存的字节数是其所有成员所占用内存字节数之和。本题中整型变量i所占用的内存是2字节,字符型变量ch所占用的内存是1字节,双精度型变量f所占用的内存是8字节,三者相加即可。
[多选题]条件“IN(20,30,40)”表示( )
年龄是20或30或40