在线第10章 运算符重载ppt课件.ppt

在线第10章 运算符重载ppt课件.ppt

ID:59326576

大小:140.00 KB

页数:72页

时间:2020-09-20

在线第10章 运算符重载ppt课件.ppt_第1页
在线第10章 运算符重载ppt课件.ppt_第2页
在线第10章 运算符重载ppt课件.ppt_第3页
在线第10章 运算符重载ppt课件.ppt_第4页
在线第10章 运算符重载ppt课件.ppt_第5页
资源描述:

《在线第10章 运算符重载ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第10章运算符重载10.1什么是运算符重载10.2运算符重载的方法10.3重载运算符的规则10.4运算符重载函数作为类成员函数和友元函数10.5重载双目运算符10.6重载单目运算符10.7重载流插入运算符和流提取运算符10.8不同类型数据间的转换所谓重载,就是重新赋予新的含义。运算符也可以重载。例如:用“+”号进行两个复数的相加。在C++中不能在程序中直接用运算符“+”对复数进行相加运算。用户必须自己设法实现复数相加。例如可以通过定义一个专门的函数来实现复数相加。见例10.1。10.1什么是运算符重载例10.1通过函数来

2、实现复数相加。#includeusingnamespacestd;classComplex//定义Complex类{public:Complex(){real=0;imag=0;}//定义构造函数Complex(doubler,doublei){real=r;imag=i;}//构造函数重载Complexcomplex_add(Complex&c2);//声明复数相加函数voiddisplay();//声明输出函数private:doublereal;//实部doubleimag;//虚部};Comp

3、lexComplex∷complex_add(Complex&c2){Complexc;c.real=real+c2.real;c.imag=imag+c2.imag;returnc;}voidComplex∷display()//定义输出函数{cout<<″(″<

4、ay();//输出c1的值cout<<″c2=″;c2.display();//输出c2的值cout<<″c1+c2=″;c3.display();//输出c3的值return0;}调用方式显得不直观、很不方便。要想直接用加号“+”来实现复数运算c3=c1+c2;这就需要对运算符“+”进行重载。运行结果如下:c1=(3+4i)c2=(5-10i)c1+c2=(8,-6i)定义一个重载运算符的函数,在需要执行被重载的运算符时,系统就自动调用该函数。运算符重载实质上是函数的重载。重载运算符的函数一般格式如下:函数类型oper

5、ator运算符名称(形参表列){对运算符的重载处理}例如:Complexoperator+(Complex&c1,Complex&c2);将“+”用于Complex类(复数)的加法运算的函数的原型10.2运算符重载的方法在定义了重载运算符的函数后,可以说:函数operator+重载了运算符+。执行表达式就是调用函数的过程,可以把两个整数相加也想像为调用下面的函数:intoperator+(inta,intb){return(a+b);}如果有表达式5+8,就调用此函数将5和8作为调用函数时的实参。可以在例10.1程序的基

6、础上重载运算符“+”,使之用于复数相加。例10.2重载运算符“+”,使之能用于两个复数相加。#includeusingnamespacestd;classComplex{public:Complex(){real=0;imag=0;}Complex(doubler,doublei){real=r;imag=i;}Complexoperator+(Complex&c2);//声明重载运算符的函数voiddisplay();private:doublereal;doubleimag;};ComplexCo

7、mplex∷operator+(Complex&c2){Complexc;c.real=real+c2.real;//this->real+c2.realc.imag=imag+c2.imag;returnc;}voidComplex∷display(){cout<<″(″<

8、ator+函数取代了例10.1complex_add函数,只函数名不同。(2)在main函数中,“c3=c1+c2;”取代了例10.1中的“c3=c1.complex_add(c2);”。C++系统将表达式c1+c2解释为c1.operator+(c2)//其中c1和c2是Complex类的对象即以c2为实参调用c1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。