C++实验报告8Word文档下载推荐.docx
《C++实验报告8Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《C++实验报告8Word文档下载推荐.docx(10页珍藏版)》请在冰点文库上搜索。
声明Point类,有坐标_x,_y两个成员变量;
对Point类重载“++”(自增)、“——”(自减)运算符,实现对坐标值的改变。
实验方法
编写程序声明Point类,在类中声明整型的私有成员变量_x、_y,声明成员函数Point&
operator++();
Pointoperator++(int);
以实现对Point类重载“++”(自增)运算符,声明成员函数Point&
operator--();
Pointoperator--(int);
以实现对Point类重载“——”(自减)运算符,实现对坐标值的改变。
程序名:
实验预估时间
40分钟
实验结果
#include<
iostream>
usingnamespacestd;
classPoint
{
public:
Point(intx=0,inty=0);
Point&
operator++();
Pointoperator++(int);
operator--();
Pointoperator--(int);
voiddisypaly();
private:
int_x,_y;
};
Point:
:
Point(intx,inty)
{
_x=x;
_y=y;
}
voidPoint:
disypaly()
cout<
<
"
("
_x<
"
_y<
)"
endl;
Point&
operator++()
_x++;
_y++;
return*this;
PointPoint:
operator++(int)
Pointold=*this;
++(*this);
returnold;
operator--()
_x--;
_y--;
operator--(int)
--(*this);
voidmain()
Pointpoint(15,20);
初始坐标:
"
;
();
point++坐标:
(point++).disypaly();
++point坐标:
(++point).disypaly();
Point--坐标:
(point--).disypaly();
--Point坐标:
(--point).disypaly();
实验8-2多态性2
声明一个车(vehicle)基类,具有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。
观察虚函数的作用。
编写程序声明一个车(vehicle)基类,具有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。
在main()函数中声明vehicle、bicycle、motorcar、motorcycle的对象,调用其Run()、Stop()函数,观察其执行情况。
再分别用vehicle类型的指针来调用这几个对象的成员函数,看看能否成功;
把Run()、Stop()声明为虚函数,再试试看。
35分钟
classvehicle
virtualvoidRun()
{
cout<
vehicleRun:
display()"
<
endl;
}
virtualvoidStop()
vehicleStop:
endl<
classbicycle:
virtualpublicvehicle
voidRun()
bicycleRun:
voidStop()
bicycleStop:
classmotorcar:
virtualpublicvehicle
motorcarRun:
motorcarStop:
classmotorcycle:
publicbicycle,publicmotorcar
motorcycleRun:
motorcycleStop:
voidfun(vehicle*prt)
prt->
Run();
Stop();
vehiclevehicle1,*p;
bicyclebicycle1;
motorcarmotorcar1;
motorcyclemotorcycle1;
p=&
vehicle1;
fun(p);
bicycle1;
motorcar1;
motorcycle1;
vehiclevehicle1;