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