C与面向对象程序设计解析课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《C与面向对象程序设计解析课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 解析 课件
- 资源描述:
-
1、12023-1-30C+与面向对象程序设计运算符重载运算符重载operator overloading张 俊2006-11-222023-1-30C+与面向对象程序设计主要内容和教学要求主要内容和教学要求掌握常用运算符的重载理解运算符重载的两种形式32023-1-30C+与面向对象程序设计为什么要重载运算符为什么要重载运算符应用系统的运算符集;为自定义类型提供简洁的表达式;Complex a,b,c;不重载运算符:a.Print();c=Add(a,b);重载运算符:cout a b;c=a+b;cout =!=赋值运算符:=+=-=*=/=I/O运算符 :一元运算符:()!-122023-1
2、-30C+与面向对象程序设计运算符重载的形式运算符重载的形式成员函数形式:运算符函数作为类的成员非成员函数形式:l友元l外部函数(全局函数)132023-1-30C+与面向对象程序设计Complex类详解142023-1-30C+与面向对象程序设计数据成员及构造函数数据成员及构造函数152023-1-30C+与面向对象程序设计赋值运算符赋值运算符成员函数原型成员函数原型成员函数定义成员函数定义成员函数调用成员函数调用162023-1-30C+与面向对象程序设计算术运算符的重载算术运算符的重载成员函数原型成员函数原型思考:为什么只有一个加数?172023-1-30C+与面向对象程序设计加法运算符
3、的实现及调用加法运算符的实现及调用成员函数定义成员函数定义成员函数调用成员函数调用182023-1-30C+与面向对象程序设计192023-1-30C+与面向对象程序设计复合运算的运算符复合运算的运算符成员函数定义成员函数定义成员函数原型成员函数原型202023-1-30C+与面向对象程序设计成员函数定义成员函数定义成员函数调用成员函数调用212023-1-30C+与面向对象程序设计一元运算符的重载一元运算符的重载成员函数原型成员函数原型成员函数定义成员函数定义成员函数调用成员函数调用222023-1-30C+与面向对象程序设计成员函数形式的特点成员函数形式的特点函数定义:作为类的成员函数。函
4、数参数:二元运算符只带一个参数,一元运算符不带参数。函数调用:当前对象作为左操作数,函数参数作为右操作数。a.operator+(b)语法比较晦涩,不易理解232023-1-30C+与面向对象程序设计友元函数形式的重载友元函数形式的重载友元函数定义友元函数定义友元函数原型友元函数原型友元函数调用友元函数调用242023-1-30C+与面向对象程序设计友元函数形式的重载友元函数形式的重载252023-1-30C+与面向对象程序设计友元函数形式的特点友元函数形式的特点函数定义:作为类的友元函数函数参数:二元运算符带两个参数,一元运算符带一个参数函数调用:两个对象都作为函数的参数 operator+
5、(a,b);是几元运算符就带几个操作数,语法符合习惯,易懂,但少用。262023-1-30C+与面向对象程序设计成员函数形式遇到的问题成员函数形式遇到的问题当运算符的左操作数不是该类的对象时,出现问题。如 Complex a,b;重载:operator+(const Complex&r)a=3+b;3不是Complex的对象,不能调用上述重载的运算符。因而不能计算。272023-1-30C+与面向对象程序设计友元函数形式的另一类用法友元函数形式的另一类用法成员函数原型成员函数原型成员函数定义成员函数定义成员函数调用成员函数调用282023-1-30C+与面向对象程序设计流插入符和提取符的重载流
6、插入符和提取符的重载cin a b;cout a a b c;cout a b c;3a=b;4c=b+a;c=b x;5c=x+a;c=x b;312023-1-30C+与面向对象程序设计String类详解类详解自课本自课本P311开始开始322023-1-30C+与面向对象程序设计332023-1-30C+与面向对象程序设计逻辑非运算符逻辑非运算符友元函数的形式请参考P313342023-1-30C+与面向对象程序设计重载流插入和提取运算符重载流插入和提取运算符352023-1-30C+与面向对象程序设计流插入符调用分析流插入符调用分析362023-1-30C+与面向对象程序设计复制构造函
7、数复制构造函数372023-1-30C+与面向对象程序设计赋值运算符赋值运算符382023-1-30C+与面向对象程序设计字符串连接字符串连接“+、+=”392023-1-30C+与面向对象程序设计转换运算符转换运算符有什么样的转换构造有什么样的转换构造函数,就应该提供什函数,就应该提供什么样的转换运算符么样的转换运算符数据类型转换数据类型转换算术运算算术运算赋值赋值实参传给形参实参传给形参返回值返回值402023-1-30C+与面向对象程序设计Rational类详解类详解412023-1-30C+与面向对象程序设计422023-1-30C+与面向对象程序设计求两个数的最大公约数432023-
8、1-30C+与面向对象程序设计求两个数的最小公倍数求两个数的最小公倍数442023-1-30C+与面向对象程序设计对分数进行标准化对分数进行标准化452023-1-30C+与面向对象程序设计各种构造函数462023-1-30C+与面向对象程序设计复制构造函数复制构造函数472023-1-30C+与面向对象程序设计成员函数形式成员函数形式的重载的重载482023-1-30C+与面向对象程序设计赋值运算符的重载赋值运算符的重载492023-1-30C+与面向对象程序设计算术运算符的重载算术运算符的重载502023-1-30C+与面向对象程序设计512023-1-30C+与面向对象程序设计复合运算符
展开阅读全文