首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下类定义: class MyBase{ int k; public: MyBase(int n=0):k(n){} int value()const{return k;} }; class MyDerived:MyBase{ int j; public
有如下类定义: class MyBase{ int k; public: MyBase(int n=0):k(n){} int value()const{return k;} }; class MyDerived:MyBase{ int j; public
admin
2015-11-24
25
问题
有如下类定义:
class MyBase{
int k;
public:
MyBase(int n=0):k(n){}
int value()const{return k;}
};
class MyDerived:MyBase{
int j;
public:
MyDerived(int i):j(i){}
int getK()const{return k;}
int getJ()const{return j;}
};
编译时发现有一处语法错误,对这个错误最准确的描述是( )。
选项
A、函数getK试图访问基类的私有成员变量k
B、在类MyDerived的定义中,基类名MyBase前缺少关键字public、protected或pfivate
C、类MyDerived少一个无参的构造函数
D、类MyDerived的构造函数没有对基类数据成员k进行初始化
答案
A
解析
此题考查的是派生类对基类成员的访问。因为类中缺省的访问权限是私有,所以本题中MyBase类中定义的成员k是私有成员。派生类中的成员只能访问基类中的公有成员和保护成员,不能访问基类中的私有成员。所以派生类中函数getK()中的语句return k;是非法的。
转载请注明原文地址:https://kaotiyun.com/show/HlNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序#include<iostream.h>voidmain(){charch[2][5]={"6937","8254"},*p[2];inti,j,s=0;
下列运算符中全都可以被友元函数重载的是
以下对C++语言函数的有关描述中,正确的是
重载输入流运算符>>必须使用的原型为
在进行任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态;其中只能用于检测输入流状态的操作函数名称是
下列叙述中正确的是
关于纯虚函数和抽象类的描述中,()是错误的。
下列运算符中,()运算符在C++中不能重载。
下列关于运算符重载不正确的是
如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员。下列程序没有使用多态机制,其输出结果是______。#include<iostream>usingnamespacestd;class
随机试题
电阻的单位是()。
简述新中国初期的土地改革。
Thesellingpriceofthathouseand______$25,000.
RPA卡环组固位臂的坚硬部分仅应
下述对于地西泮的不良反应的描述中不恰当的是
不做假账是对会计人员的基本要求,最能体现这项要求的会计职业道德规范是()。
商业银行业务外包的种类包括()
根据财务管理理论,按企业所取得资金的权益特性不同,可将筹资分为()。
Newtechnologylinkstheworldasneverbefore.Ourplanethasshrunk.It’snowa"globalvillage"wherecountriesareonlyseco
A、Trainservicewillreturntonormalinafewdays.B、Thewomanwillnevertaketrainstocampusagain.C、Thewomanwasill-inf
最新回复
(
0
)