首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)重载运算符int,请在注释//********1********后添加适当的语句。 (2)重载运算符“<<”,请
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)重载运算符int,请在注释//********1********后添加适当的语句。 (2)重载运算符“<<”,请
admin
2018-10-23
28
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)重载运算符int,请在注释//********1********后添加适当的语句。
(2)重载运算符“<<”,请在注释//********2********后添加适当的语句。
(3)在主函数main()中定义变量i,并调用对象obj的int运算符,给变量赋初值为10,请在注释//********3********后添加适当的语句。
(4)调用obj的“<<”运算符输出:
Hello Test
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
1 #include<iostream>
2 using namespace std;
3 class TestClass
4 {
5 public:
6 //********1********
7
8 {
9 cout<<’’int’’<<end1;
10 return 10;
11 }
12 //********2********
13 {
14 cout<<str<<end1;
15 }
16 };
17 int main()
18 {
19 TestClass obj;
20 //********3********
21
22 //********4********
23
24 return 0;
25 }
选项
答案
(1)添加语句:operator int() (2)添加语句:operator<<(char*str) (3)添加语句:int i=int(obj); (4)添加语句:obj<<’’Hello Test’’;
解析
本题的功能是通过重载运算符实现字符串输出。在VC环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已定源程序的main主函数开始入手,可以看出程序通过调用类TestClass的运算符重载函数实现各种输出操作。
(1)题目1要求“重载运算符int”的定义。运算符重载的方法是定义一个重载运算符的函数,其一般格式为:函数类型operator运算符名称(形参列表){对运算符的重载处理}。所以第1个标识下,重载运算符int的语句为“operator int()”。
(2)题目2要求“重载运算符’<<’”同(1),第2个标识下“<<”的重载函数定义为“operator<<(char*str)”。
(3)题目3要求“在主函数main()中定义变量i,并调用对象obj的int运算符,给变量赋初值为10。”定义变量i,即int i。“operator int()”中的返回值为10,所以调用对象obj的int运算符,给变量赋初值为10,就是int(obj),即第三个标识下添加“inti=int(obj);”。
(4)题目4要求“调用obj的“<<”运算符输出“HelloTest””。重载运算符“<<”后,不仅能输出标准类型数据,而且可以输出用户自己定义的类对象。所以直接添加要输出的字符串即可,即“obj<<’’Hello Test’’;”。
转载请注明原文地址:https://kaotiyun.com/show/c5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若需要把一个函数"voidFuric();"定义为一个类Sample的友元函数,则应在类Sample的定义中加入一条语句______。
对于以下带参数的main()函数的第二形参,voidmain(intargc,______),不可能的形式是
假定MyClass为一个类,则该类的拷贝构造函数的声明语句为
以下函数值的类型是fun(floatx){floaty;y=3*x-4;returny;}
数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为
如果类中的一个成员函数的定义实现在类内,则该函数系统自动默认为该类的______函数。
有以下程序:main(){inta=5,b=4,c=3,d=2;if(a>b>C)cout<<d<<end1;elseif((c-1)=d)==1)tout<<d+1<<endl;elsecou
下列关于C++函数的说明中,正确的是()。
两个或两个以上模块之间关联的紧密程度称为()。
在声明派生类时,如果不显式地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classBase{protected:voidfun(){}};classD
随机试题
Jane__________inThailandforabout8yearssofar,sosheisquitefamiliarwiththecountry.
36岁经产妇,第一胎曾分娩巨大儿。随后两次妊娠分别在24周及22周时破膜不久流产。最可能造成两次流产的原因是
A.吸氧、高压氧舱疗法B.快速静注甘露醇、速尿、激素等C.立即将患者转移到空气新鲜的地方D.使用能量合剂、甲氯芬酯(氯酯醒)、胞磷胆碱等E.注意口腔卫生、使用抗生素等抢救急性CO中毒时,促进脑细胞代谢的是
背景材料:某装饰施工单位于2013年6月承接某工程内装施工任务,该工程普通用途房间隔墙全部采用轻钢龙骨双层纸面石膏板内填充防火岩棉构造做法,经该单位项目负责人精心组织、认真施工、按期完成施工全部内容,质量优良,受到行业政府主管部门和建设单位的一致好评。
防火封堵检查中,有关无机堵料的说法错误的是()。
商业银行在进行风险与控制自我评估时,评估范围覆盖所有业务品种,体现了该工作的()原则。
设∫xf(x)dx=arcsinx+C,则=___________。
ThepeoplewhorunFacebookarefuriousaboutanewmoviethatdepictstheexistenceofFacebook.They’reupsetbecausemuchof
Sincethe1970s,archaeologicalsitesinChina’sYangtzeRiverregionhaveyieldedevidenceofsophisticatedrice-farmingsociet
Forthispart,youareallowed30minutestowriteashortessayentitledOnCosmeticSurgery.Youshouldwriteatleast150wor
最新回复
(
0
)