首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)重载运算符int,请在注释//********1********后添加适当的语句。 (2)重载运算符“<<”,请
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)重载运算符int,请在注释//********1********后添加适当的语句。 (2)重载运算符“<<”,请
admin
2018-10-23
69
问题
使用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全国计算机二级
相关试题推荐
以下程序的输出结果是______。#include<iostream.h>voidmain(){inta=0;a+=(a=8);cout<<a;}
冒泡排序算法在最好的情况下的元素交换次数为______次。
数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为______。
对于语句cout<<setfilll(’*’)<<setw(10)<<1<<setill(’*’)<<setw(2)<<2;的输出结果是()。
下列定义中p指向的地址可更改,但*p不能够更改的是()。
有以下程序:#include<iostream.h>voidfun(inta,mtb,intC){a=456,b=567,c=678;}voidmain(){intx=10,y=20,z=30;
以下程序中调用cin函数给变量a输入数值的方法是错误的,其错误原是()。#include<iostream.h>voidmain(){int*p,*q,a,b;p=&a;eout<<"inputa:";
在类的对象被创建时,______函数会被自动调用。
有下列程序:#include<iostream>usingnamespacestd;classTestClass1{public:TestClass1(){cout<<"A";}
关于构造函数A()的拷贝构造函数正确的是
随机试题
医用直热式热敏相机的核心部件是
急性乳腺炎中医称发于哺乳期者称
甲对于乙享有100万元的债权,乙对于丙享有100万元的债权。因到期乙无力偿还甲的债权,又不及时行使对于丙的债权,甲提起代位权诉讼。下列选项正确的是()。
粒状物料试样经过筛分不能通过筛孔的试样质量称为筛余。()
背景资料某水利枢纽工程建设内容包括大坝、溢洪道、水电站等建筑物。该工程由某流域管理机构组建的项目法人负责建设,某施工单位负责施工,在工程施工过程中发生如下事件:事件一:溢洪道施工需要进行爆破作业,施工单位使用一辆3.0t的小型载重
某建设项目工期为2年,工程合同价为500万元人民币。根据《建筑工程施工许可管理办法》的规定,申请施工许可证时到位资金不得少于()万元。
又称为单位信托基金的基金是()
()瑟斯顿提出的态度测量方法是等距量表法。
Moneycorrupts,theysay,andnowthere’sastudythatshowswhypeoplegetsosneakywhenitcomestomakingaprofit.Therese
Supposewebuiltarobot(机器人)toexploretheplanetMars.Weprovidetherobotwithseeingdetectorstokeepitawayfrom【B1】____
最新回复
(
0
)