首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 在矩形类中重载关系运算符“>=”,采用友元,比较的依据是矩形面积的大小。重载算术运算符“+=”,采用成员函数,更新矩形对象的长与宽,分别加
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。 【说明】 在矩形类中重载关系运算符“>=”,采用友元,比较的依据是矩形面积的大小。重载算术运算符“+=”,采用成员函数,更新矩形对象的长与宽,分别加
admin
2010-01-15
53
问题
阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。
【说明】
在矩形类中重载关系运算符“>=”,采用友元,比较的依据是矩形面积的大小。重载算术运算符“+=”,采用成员函数,更新矩形对象的长与宽,分别加上形参矩形的长与宽。重载算术运算符+,利用构造函数,采用友元。
【代码】
class Crect
{
int length,witdth;
public;
CRect(int l,int w){
length=l;
width=w;
}
friend int operator>=(CRect& r1, CRect& r2)
{
return (1)>=(2);//比较面积
}
void operator+=(CRect& r){
(3);//求长
(4);//求宽
}
friend operater+(CRect& r1, CRect& r2){
return CRect((5)); //利用构造函数
}
}
选项
答案
(1)r1.length*r1.width (2)r1.length*r1.width (3)length+=r.length (4)width+=r.width (5)r1.length+r2.length,r1.width+r2.width
解析
本题考查C++中的函数重载与友元。
题目要求在矩形类中采用友元重载关系运算符“>=”,比较的依据是矩形面积的大小;采用成员函数重载算术运算符“+=”来更新矩形对象的长与宽,其功能是分别加上形参矩形的长与宽;重载算术运算符“+”,利用构造函数,也采用友元的方式。首先我们要了解一下友元的作用。
需要在类的外部直接访问类的私有数据成员,在不改变类的数据成员安全性的前提下,使得类外部的函数或类能够访问类中的私有成员数据,这一功能可以通过友元的方式来实现。下面来具体分析程序。
第(1)空与第(2)空要结合起来完成,它们是重载关系运算符“>=”的两个操作数,而根据题目要求,这个关系运算符的比较依据是矩形面积的大小,求矩形的面积是通过矩形的长和宽来实现的,这个函数的参数是两个矩形类对象,在定义矩形类时,分别把矩形的长和宽定义成了默认的私有成员变量。根据程序中函数的定义可以知道,这个函数被定义为友元函数,可以访问矩形类中的私有成员变量,因此这两个空的答案分别是用对象的长和宽计算其面积,即答案分别为r1.length*r1.width与r2.length*r2.width。
第(3)空与第(4)空要结合起来完成,它们是重载算术运算符“+=”函数下面的操作,根据题目要求,这个算术运算符的作用是用来根据形参矩形的长与宽更新该矩形对象的长与宽,是该矩形对象的长与宽分别加上形参矩形对象的长与宽,根据注释,第 (3)空用来更新其长,因此此空答案为length+=r.length;而第(4)空用来更新其宽,因此答案为width+=r.width。
第(5)空在重载算术运算符“+”的函数下面,根据题目要求,此函数的实现是利用矩形类的构造函数和友元共同实现的。从程序中可以明显知道,此空是构造函数的参数,而构造函数的两个参数分别是矩形的长与宽。算术运算符“+”的作用我们大家也都非常熟悉,是用来计算两个操作数的和。重载算术运算符“+”的函数参数是两个矩形对象,那么构造函数中的两个参数应该分别是这两个矩形对象的长与宽的和。所以此空答案为r1.length+r2.length,r1.width+r2.width。
转载请注明原文地址:https://kaotiyun.com/show/8IjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel2003中,A1到E6单元格的值如下图所示,若在A7单元格中输入函数“=COUNTA(A1:E6)”,按回车键后,则A7单元格显示的值为(44)。
在Excel2010中,C3:C7单元格中的值分别为10、OK、20、YES和48,在。D7单元格中输入函数“=COUNT(C3:C7)”,按回车键后,D7单元格中显示的值为________________。
在Excel2010中,设单元格A1、B1、C1、A2、B2、C2中的值分别为1、2、3、4、5、6,若在单元格D1中输入函数“=MAX(A1:A2,B1:C2)”,按回车键后,则D1单元格中的值为(
假设在Access中已经建立了“学生”表,表中包括“学号”、“姓名”、“性别”和“班级”等字段,如果要统计出每个班级的人数,那么在查询设计视图的“班级”的“总计”行和“学号”的“总计”行中应分别选择(65)。
双击某个非可执行程序的文件名将(24)。
在Access中,查询“学生”数据表的所有记录及字段的SQL语句是______。
计算机在接通电源后,系统首先由(41)程序对内部每个设备进行测试。
在Windows7运行时,为强行终止某个正在持续运行且没有互动反应的应用程序,可按组合键Ctrl+Alt十Del启动(24)________________,选择指定的进程和应用程序,结束其任务。
请根据图2-13网页的显示效果,解释该ASP程序中用下画线标出的语句的含义,即填写(1)、(3)、(4)、(6)、(10)空缺处的解释内容。在index.asp文档中使用了<styletype="text/css">语句。其中,CSS是指(10),
请根据图2-13网页的显示效果,解释该ASP程序中用下画线标出的语句的含义,即填写(1)、(3)、(4)、(6)、(10)空缺处的解释内容。请根据图2-13网页的显示效果,将ASP程序中(2)、(5)、(7)、(8)、(9)空缺处的代码补充完整。A
随机试题
患者男,27岁。因外伤致昏迷,需鼻饲。护士在晨晚间为其进行口腔护理的目的不包括()。
股肿湿热下注证内服方宜选
A.寒邪袭表,郁遏卫气,损伤营阴B.风寒袭表,营卫不和,正邪交争C.风寒袭表,郁遏卫气,损伤营阴D.风寒外袭,卫外不固,营不内守太阳中风证的主要病机是
生产安全事故发生时,()是应急响应的行动指南。
总分类账簿必须采用订本式账簿,登记的方法也因企业会计核算的组织程序不同而异。( )
资产负债表中的流动资产合计数与流动负债合计数()。
二进制数1011+1001=()。
"PsychologyClass"Whatisthelecturemainlyabout?
Whileanti-slaverysentimenteventuallydictatedpolicyinboththeUnitedStatesandGreatBritain,thecourseofabolitiondif
Itisallverywelltoblametrafficjams,thecostofpetrolandthe【C1】______paceofmodernlife,butmannersontheroadsare
最新回复
(
0
)