首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下类定义和变量定义: class A{ public: A(){data=0;} A(int x){data=x;} ~A(){} int GetData()const{return data;}
有如下类定义和变量定义: class A{ public: A(){data=0;} A(int x){data=x;} ~A(){} int GetData()const{return data;}
admin
2021-06-10
25
问题
有如下类定义和变量定义:
class A{
public:
A(){data=0;}
A(int x){data=x;}
~A(){}
int GetData()const{return data;}
void SetData(int n){data=n;}
private:
int data;
};
const A a(5);
A b(8);
下列函数调用中错误的是( )。
选项
A、a.GetData();
B、a.SetData(10);
C、b.GetData();
D、b.SetData(10);
答案
B
解析
题意中定义了两个对象a和b,a是const变量,将一个对象说明为常对象后,通过这个常对象只能调用它的常成员函数,而不能调用其他成员函数,所以不能通过调用a成员函数修改对象成员的值,而b则可以,所以a.SetData(10)的调用是错误的。由于GetData()是常成员函数,所以a.GetData()的调用正确,答案为B选项。
转载请注明原文地址:https://kaotiyun.com/show/Uqfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列叙述中正确的是
有如下类定义:classPet{charname[30];public:Pet(char*n){strcpy(name,n);}voidbark(){co
运算符重载是对已有的运算符赋予多重含义,因此()。
请打开考生文件夹下的解决方案文件proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:打开
下面不能作为软件设计工具的是
下列关于栈叙述正确的是( )。
已知表达式++x中的“++”是作为成员函数重载的运算符,则与++x等效的运算符函数调用形式为()。
若MyTemp是一个只有一个虚拟类型参数的类模板,且有如下语句序列MyTemp<double>p2;MyTemp<long>p3[2];编译系统在处理上面的语句序列时,所生成的模板MyTemp的实例的个数是()。
关于在调用模板函数时模板实参的使用,下列表述正确的是()。
随机试题
我心里很烦而且不知道做什么。
由于激动传导异常所致的心律失常是
女性,26岁,吸入冷空气后,突然出现呼吸困难,胸闷,咳嗽,查体:呼吸32次/分,呼气相延长,双肺可闻及弥漫性以呼气相为主的哮鸣音。首先采取下列哪种治疗方法
锚具周期性荷载试验的循环周期为()。
甲、乙两个物业2005年10月的价值均为1000万元,预计甲物业2006年10月的价值为1100万元和900万元的可能性各为50%,预计乙物业2006年10月的价值为1200万元和800万元的可能性各为50%,甲、乙两个物业投资风险比较的结果是()
下列关于成本计算平行结转分步法的表述中,正确的有()。
下列行为中,应受到反垄断法律制度规制的有()。
因连续3日上班迟到,在某行政机关工作的小汪被其单位领导曾主任直接辞退。()
甲、乙、丙、丁分别购买了某住宅楼(共四层)的一至四层住宅,并各自办理了房产证。下列哪一说法是不正确的?
高难度即高区分度。
最新回复
(
0
)