欢迎来到天天文库
浏览记录
ID:9327616
大小:34.00 KB
页数:10页
时间:2018-04-28
《运算符重载实验报告》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、上海电力学院实验报告课程名称高级程序设计C++(2)实验项目实验五运算符重载姓名学号班级专业同组人姓名无指导教师姓名XX实验日期一、实验目的Ø掌握双目运算符的重载。Ø掌握基类与派生类的类型转换。二、实验内容和步骤1.定义一个基类base_shapes,其中包含:Øprotected类型的数据成员l,w和r,分别代表矩形的长、宽及圆的半径。Ø成员函数inputsquare()用来设置数据成员l,w的值。Ø成员函数inputcircle()用来设置数据成员r的值。Ø定义成员函数area(),输出一个字
2、符串。定义两个类square及circle为base_shapes的派生类,并重载其成员函数area()分别用来计算矩形和圆的面积。l程序源代码(注意添加注释)#includeusingnamespacestd;classbase_shapes{protected:doublel,w,r;public:voidinputsquare();voidinputcircle();voidarea();};classsquare:publicbase_shapes{public:voi
3、darea();};classcircle:publicbase_shapes{public:10注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。voidarea();};voidbase_shapes::inputsquare(){cout<<"请输入长和宽:";cin>>l>>w;}voidbase_shapes::inputcircle(){cout<<"请输入半径:";cin>>r;}voidbase_shapes::area(){cout<<"面积
4、为:";}voidsquare::area(){cout<<"矩形的";base_shapes::area();cout<5、实验原理与内容、实验步骤与记录、实验分析与结论等。l运行结果(直接截取结果图)2.设计一个时间类Time,包括时、分、秒等私有数据成员。要求实现时间的基本运算,如一时间加上另一时间、一时间减去另一时间等,编写主函数调用。要求:通过在类中设计两个重载运算符函数如下,来实现相应的功能Timeoperator+(Time)Timeoperator-(Time)l程序源代码(注意添加注释)#includeusingnamespacestd;classTime{inthour,min,s6、ec;public:Timeoperator+(constTime&a);Timeoperator-(constTime&a);Time(inth=0,intm=0,ints=0);voidshowtime();};Time::Time(inth,intm,ints){hour=h;min=m;sec=s;}TimeTime::operator+(constTime&a){Timeres;res.hour=hour+a.hour;res.min=min+a.min;res.sec=sec+a.se7、c;returnres;}TimeTime::operator-(constTime&a){Timeres;res.hour=hour-a.hour;res.min=min-a.min;res.sec=sec-a.sec;returnres;}10注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。voidTime::showtime(){cout<8、(3,4,5),c,d;c=a+b;d=a-b;cout<<"相加后结果为:";c.showtime();cout<<"相减后结果为:";d.showtime();return0;}l运行结果(直接截取结果图)3.设计一个三角形类Tri,包含三角形3条边长的私有数据成员,另有一个成员函数重载运算符“+”,以实现求两个三角形对象的面积之和,编写主函数调用。要求:通过在类外设计重载运算符函数实现。l程序源代码(注意添加注释)#include#include
5、实验原理与内容、实验步骤与记录、实验分析与结论等。l运行结果(直接截取结果图)2.设计一个时间类Time,包括时、分、秒等私有数据成员。要求实现时间的基本运算,如一时间加上另一时间、一时间减去另一时间等,编写主函数调用。要求:通过在类中设计两个重载运算符函数如下,来实现相应的功能Timeoperator+(Time)Timeoperator-(Time)l程序源代码(注意添加注释)#includeusingnamespacestd;classTime{inthour,min,s
6、ec;public:Timeoperator+(constTime&a);Timeoperator-(constTime&a);Time(inth=0,intm=0,ints=0);voidshowtime();};Time::Time(inth,intm,ints){hour=h;min=m;sec=s;}TimeTime::operator+(constTime&a){Timeres;res.hour=hour+a.hour;res.min=min+a.min;res.sec=sec+a.se
7、c;returnres;}TimeTime::operator-(constTime&a){Timeres;res.hour=hour-a.hour;res.min=min-a.min;res.sec=sec-a.sec;returnres;}10注:实验报告内容包括:实验目的与要求、实验原理与内容、实验步骤与记录、实验分析与结论等。voidTime::showtime(){cout<8、(3,4,5),c,d;c=a+b;d=a-b;cout<<"相加后结果为:";c.showtime();cout<<"相减后结果为:";d.showtime();return0;}l运行结果(直接截取结果图)3.设计一个三角形类Tri,包含三角形3条边长的私有数据成员,另有一个成员函数重载运算符“+”,以实现求两个三角形对象的面积之和,编写主函数调用。要求:通过在类外设计重载运算符函数实现。l程序源代码(注意添加注释)#include#include
8、(3,4,5),c,d;c=a+b;d=a-b;cout<<"相加后结果为:";c.showtime();cout<<"相减后结果为:";d.showtime();return0;}l运行结果(直接截取结果图)3.设计一个三角形类Tri,包含三角形3条边长的私有数据成员,另有一个成员函数重载运算符“+”,以实现求两个三角形对象的面积之和,编写主函数调用。要求:通过在类外设计重载运算符函数实现。l程序源代码(注意添加注释)#include#include
此文档下载收益归作者所有