首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)重载运算符int,请在注释//********1********后添加适当的语句。 (2)重载运算符“<<”,请
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)重载运算符int,请在注释//********1********后添加适当的语句。 (2)重载运算符“<<”,请
admin
2018-10-23
42
问题
使用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全国计算机二级
相关试题推荐
设px是指向一个类动态对象的指针变量,则执行"deletepx;"语句时,将自动调用该类的______。
设有语句intn,m;chara[5],b;cin>>n>>a>>m>>b;为了分别将10和20分别赋给n和m,look赋给a,t赋给b,则正确的输入为
已知语句intm=10;则下列引用的表示中正确的是
执行下面程序中的输出语句后,a的值是main(){inta;cout<<(a=3*5,a*4,a+5);}
__[12]__是一系列相关函数的模型或样板,这些函数的__[13]__形式相同,只是所针对的__[14]__不同。
数据库恢复是将数据库从______状态恢复到某一已知的正确状态。
函数swap(a,n)可完成对a数组从第1个元素到第n个元素两两交换。其中b[=1;b[1]=2;swap(b,2)。在运行调用函数中的语句后,b[0]和b[1]的值分别为()。
以下程序中调用cin函数给变量a输入数值的方法是错误的,其错误原是()。#include<iostream.h>voidmain(){int*p,*q,a,b;p=&a;eout<<"inputa:";
已知下列程序的输出结果是42,请将横线处缺失的部分补充完整。#include<iostream>usingnamespacestd;classFoo{intvalue;p
下列程序用于将源文件中的字母进行大小写转换,请填写while的请句。#include<iostream.h>#include<fstream.h>#include<iomanip.h>voidmain(){cha
随机试题
管涵通常采用工厂预制钢筋混凝土管的成品管节,管节断面形式分为()等。
【B1】【B4】
患者缘自2周余以前诱因不明开始出现咳嗽,阵发性发作,干咳少痰,体力下降,伴右胸隐痛,咳嗽及深呼吸时明显,午后发热,不伴畏寒寒战,夜间汗多。体格检查体温:37℃,呼吸:20次/分,脉搏:86次/分,血压:110/60mmHg。肺结核的治疗往往需要长时间联
创造一种畅所欲言、自由思考的氛围,诱发人创造性思维的共振和连锁反应,这是经营决策方法中的()。
附认股权证债券筹资与资本成本、债券价值、股权再融资的综合F公司是一家经营电子产品的上市公司。公司目前发行在外的普通股为10000万股,每股价格为10元,预计未来可持续增长率为13.43%。公司现在急需筹集资金16000万元,用于投资液晶显示屏项目
总效用和边际效用的关系()。
教育法律关系的()是教育法律关系的组成要素之一,指的是教育法律关系的主体依据法律规定而享有的权利与义务。
新教师更多关注课堂中发生的细节,专家型教师则很少谈论课堂管理问题和自己教学是否成功。这反映二者在()方面存在差异。
A、 B、 C、 D、 D外表面图只有两个白色的面,而且是相对的,所以折叠后不可能有两个白色的面相邻,可排除A、C;并且在相交的三个面中,至少有一面是白色的,可排除B,所以选D。
Lifeisfullofdangersandsurprises.Yourhousemayburn【C1】______.Youmayfalloutofthewindowand【C2】______yourneck.Mic
最新回复
(
0
)