《运算符重载—C++课程实验报告(共3页).doc》由会员分享,可在线阅读,更多相关《运算符重载—C++课程实验报告(共3页).doc(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上C+第四次实验学生姓名xxx班级学号xxxxxxxxx实验项目实验四 运算符重载指导教师 杜之波实验目的和要求一、实验目的(1)掌握通过运算符重载实现多态性的方法;(2)学会运算符重载的成员函数法和友元函数法;(3)能区分单目运算符的前置与后置。二、实验内容编写如下要求的完整程序:点对象运算符重载(1)建立点类,包含两个成员变量,分别表示横坐标和纵坐标;(2)具体要求1,重载前置运算符+、-;2,重载后置运算符+、-;3,主函数:申明点对象,进行前置和后置运算并显示点值。实验内容实验程序设计如下: #includeusing namespace std;class A
2、Bpublic:AB(int xx, int yy);void ShowAB();AB& operator +();AB operator +(int);AB& operator -();AB operator -(int);private:int x1,x2;AB:AB(int xx, int yy)x1=xx;x2=yy;void AB:ShowAB()coutx1 , x2endl;AB& AB:operator +()x1+;x2+;return *this;AB AB:operator +(int)AB old=*this;+(*this);return old;AB& AB:ope
3、rator -()x1-;x2-;return *this;AB AB:operator -(int)AB old=*this;-(*this);return old;int main(void)AB AA(0,0);AB BB(0,0);coutA的值为:;AA.ShowAB();coutB的值为:;BB.ShowAB();coutB=A+运算后,A的值为:;(+AA).ShowAB();cout B的值为:;(BB+).ShowAB();coutB=+A运算后,A的值为:;(+AA).ShowAB();cout B的值为:;(+BB).ShowAB();coutB=A-运算后,A的值为:;
4、(-AA).ShowAB();cout B的值为:;(BB-).ShowAB();coutB=-A运算后,A的值为:;(-AA).ShowAB();cout B的值为:;(-BB).ShowAB();return 0; 实验结果如图: 实验心得:实验过程中值得注意的是区分前置和后置运算符的区别:前置运算符先运算后返回;后置运算符先返回后运算。这点很重要,由于之前没有注意,所以做出来的值不对,后来改正之后就对了。通过这次实验,我基本掌握了通过运算符重载实现多态性的方法,学会了运算符重载的成员函数法和友元函数法,基本能够区分单目运算符的前置与后置。 教师签字 签字日期2011 年 6月 14专心-专注-专业