欢迎来到天天文库
浏览记录
ID:59448078
大小:1.23 MB
页数:141页
时间:2020-09-18
《C++大学教程(从零开始)6-运算符重载ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章运算符重载6.1运算符重载规则6.2用成员或友员函数重载运算符6.3几个典型运算符重载6.4类类型转换小结运算符重载使得用户自定义的数据以一种更简洁的方式工作例如intx,y;y=x+y;matrixm1,m2;//矩阵类对象m1=Madd(m1,m2);//调用函数计算两个矩阵的和complexc1,c2;//复数类对象c1=Cadd(c1,c2);//调用函数计算两个复数的和能表示为c1=c1+c2;?能表示为m1=m1+m2;?第6章运算符重载定义运算符重载函数6.1运算符重载规则6.1.1重载运算符的限制可以重载的运算符+-*/%^&
2、~!
3、=<>+=-=*=/=%^=&=
4、=<<>>>>=<<===!=<=>=&&
5、
6、++--->*‘->[]()newdeletenew[]delete[]不能重载的算符.::.*?:sizeof6.1运算符重载规则6.1.1重载运算符的限制重载运算符函数可以对运算符作出新的解释,但原有基本语义不变:不改变运算符的优先级不改变运算符的结合性不改变运算符所需要的操作数不能创建新的运算符6.1.2运算符重载的语法形式运算符函数是一种特殊的成员函数或友员函数成员函数的语法形式为:类型类名::operatorop(参数表){//相对于该类定义的操作}运算符函数是一种
7、特殊的成员函数或友员函数成员函数的语法形式为:类型类名::operatorop(参数表){//相对于该类定义的操作}6.1.2运算符重载的语法形式函数返回类型运算符函数是一种特殊的成员函数或友员函数成员函数的语法形式为:类型类名::operatorop(参数表){//相对于该类定义的操作}6.1.2运算符重载的语法形式重载该运算符的类6.1.2运算符重载的语法形式运算符函数是一种特殊的成员函数或友员函数成员函数的语法形式为:类型类名::operatorop(参数表){//相对于该类定义的操作}被重载的运算符6.1.2运算符重载的语法形式关键字运算符函数是
8、一种特殊的成员函数或友员函数成员函数的语法形式为:类型类名::operatorop(参数表){//相对于该类定义的操作}6.1.2运算符重载的语法形式函数名运算符函数是一种特殊的成员函数或友员函数成员函数的语法形式为:类型类名::operatorop(参数表){//相对于该类定义的操作}运算符函数是一种特殊的成员函数或友员函数成员函数的语法形式为:类型类名::operatorop(参数表){//相对于该类定义的操作}6.1.2运算符重载的语法形式运算符要求的操作数6.1.2运算符重载的语法形式一个运算符被重载后,原有意义没有失去,只是定义了相对一特定类的
9、一个新运算符运算符函数是一种特殊的成员函数或友员函数成员函数的语法形式为:类型类名::operatorop(参数表){//相对于该类定义的操作}#include#includeclassCalculator{public:Calculator(){value=0;};voidoperator++();voidoperator--();unsignedintoperator()();private:unsignedintvalue;};voidmain(){CalculatorCounter;inti;for(i
10、=0;i<5;i++){++Counter;cout<<"Counter="<0)value--;else{cout<<"Dataover
11、flow!"<#includeclassCalculator{public:Calculator(){value=0;};voidoperator++();voidoperator--();unsignedintoperator()();private:unsignedintvalue;};voidmain(){
12、CalculatorCounter;inti;for(i=0;i<5;i++){
此文档下载收益归作者所有