运算符重载C++课程实验报告.doc

上传人:wj 文档编号:4913765 上传时间:2023-05-07 格式:DOC 页数:3 大小:48KB
下载 相关 举报
运算符重载C++课程实验报告.doc_第1页
第1页 / 共3页
运算符重载C++课程实验报告.doc_第2页
第2页 / 共3页
运算符重载C++课程实验报告.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

运算符重载C++课程实验报告.doc

《运算符重载C++课程实验报告.doc》由会员分享,可在线阅读,更多相关《运算符重载C++课程实验报告.doc(3页珍藏版)》请在冰点文库上搜索。

运算符重载C++课程实验报告.doc

C++第四次实验

学生姓名

xxx

班级

学号

xxxxxxxxx

实验项目

实验四运算符重载

指导教师

杜之波

实验目的和要求

一、实验目的

(1)掌握通过运算符重载实现多态性的方法;

(2)学会运算符重载的成员函数法和友元函数法;

(3)能区分单目运算符的前置与后置。

二、实验内容

编写如下要求的完整程序:

点对象运算符重载

(1)建立点类,包含两个成员变量,分别表示横坐标和纵坐标;

(2)具体要求

1,重载前置运算符++、--;

2,重载后置运算符++、--;

3,主函数:

申明点对象,进行前置和后置运算并显示点值。

实验内容

实验程序设计如下:

#include

usingnamespacestd;

classAB

{

public:

AB(intxx,intyy);

voidShowAB();

AB&operator++();

ABoperator++(int);

AB&operator--();

ABoperator--(int);

private:

intx1,x2;

};

AB:

:

AB(intxx,intyy)

{

x1=xx;

x2=yy;

}

voidAB:

:

ShowAB()

{

cout<

}

AB&AB:

:

operator++()

{

x1++;

x2++;

return*this;

}

ABAB:

:

operator++(int)

{

ABold=*this;

++(*this);

returnold;

}

AB&AB:

:

operator--()

{

x1--;

x2--;

return*this;

}

ABAB:

:

operator--(int)

{

ABold=*this;

--(*this);

returnold;

}

intmain(void)

{

ABAA(0,0);

ABBB(0,0);

cout<<"A的值为:

";

AA.ShowAB();

cout<<"B的值为:

";

BB.ShowAB();

cout<<"B=A++运算后,A的值为:

";

(++AA).ShowAB();

cout<<"B的值为:

";

(BB++).ShowAB();

cout<<"B=++A运算后,A的值为:

";

(++AA).ShowAB();

cout<<"B的值为:

";

(++BB).ShowAB();

cout<<"B=A--运算后,A的值为:

";

(--AA).ShowAB();

cout<<"B的值为:

";

(BB--).ShowAB();

cout<<"B=--A运算后,A的值为:

";

(--AA).ShowAB();

cout<<"B的值为:

";

(--BB).ShowAB();

return0;

}

实验结果如图:

实验心得:

实验过程中值得注意的是区分前置和后置运算符的区别:

前置运算符先运算后返回;后置运算符先返回后运算。

这点很重要,由于之前没有注意,所以做出来的值不对,后来改正之后就对了。

通过这次实验,我基本掌握了通过运算符重载实现多态性的方法,学会了运算符重载的成员函数法和友元函数法,基本能够区分单目运算符的前置与后置。

教师签字

签字日期

2011年6月14

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2