北京邮电大学:《C++大学基础教程》第10章 运算符重载

C++大学基础教程 第10章运算符重载 北京邮电大学电信工程学院 计算机技术中心
C++大学基础教程 第10章 运算符重载 北京邮电大学电信工程学院 计算机技术中心

◆重载运算符可以把C艹的远算 符扩展到自定义类型和类类 型的领域中,使代码更直 观、易懂,方便、简洁
重载运算符可以把C++的运算 符扩展到自定义类型和类类 型的领域中,使代码更直 观、易懂,方便、简洁

第十八章运算符重载 10.1运算符重载的需要 10.2运算符重载的限制 10.3重载运算符的语法 10.4重载++和一运算符 10.5重载赋值运算符 10.6重载转换运算符
第十八章 运算符重载 10.1 运算符重载的需要 10.2 运算符重载的限制 10.3 重载运算符的语法 10.4 重载++和--运算符 10.5 重载赋值运算符 10.6 重载转换运算符

10.1远算符重载的需要
10.1 运算符重载的需要

10.1运算符重载的需要 ◆目的 C+代码更直观,易读,使用更方便 ◆运算符重载的实质 运算符重载的实质是函数重载。只不过 它重载的是类似“+-*/=这样的操作符 2005-4-28 北京邮电大学电信工程学院计算机技术中心
2005-4-28 北京邮电大学电信工程学院计算机技术中心 -5- 10.1 运算符重载的需要 目的 C++代码更直观,易读,使用更方便。 运算符重载的实质 运算符重载的实质是函数重载。 只不过 它重载的是类似“+ - * / =“这样的操作符

子 #include using namespace std void maino char s1[20J= Hello”; char s2 20=world char s3 20 strcpy(s3, Ssl) ∥字符串拷贝 cout<<s3<<endl strcat(s3, s2 ∥字符串连接 cout<<s3<<endl
例子: #include using namespace std; void main() { char s1[20]=”Hello”; char s2[20]=”world”; char s3[20]; strcpy(s3,s1); //字符串拷贝 cout<<s3<<endl; strcat(s3,s2); //字符串连接 cout<<s3<<endl; }

例子:添加运算符重载 #include #include using namespace std void maino string sI=Hello string s2=world string s3 S3=SI ∥字符串拷贝 cout<<s3<<endl S3=SI+S2 ∥字符串连接 cout<<s3<<endl
例子:添加运算符重载 #include #include using namespace std; void main() { string s1="Hello"; string s2="world"; string s3; s3=s1; //字符串拷贝 cout<<s3<<endl; s3=s1+s2; //字符串连接 cout<<s3<<endl; }

10.2运算符重载的限制
10.2 运算符重载的限制

10.2运算符重载的限制 ◆1、重载运算符时,重载运算符的运算顺序和优先级不 变 ◆2、不能创造新运算符 ◆3、规定不能重载的运算符: Operator Name 类属关系运算符 成员指针运算符 #儿:* 作用域运算符 条件运算符 编译预处理符号 szeo0取数据类型的长度
10.2 运算符重载的限制 1、重载运算符时,重载运算符的运算顺序和优先级不 变。 2、不能创造新运算符 3、规定不能重载的运算符: Operator Name . 类属关系运算符 # 编译预处理符号 .* 成员指针运算符 :: 作用域运算符 ? : 条件运算符 sizeof() 取数据类型的长度

10.3运算符重载的语法
10.3 运算符重载的语法
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 北京邮电大学:《C++大学基础教程》第十二章 I/0流及输入输出.pdf
- 北京邮电大学:《C++大学基础教程》第十一章 多态性.pdf
- 北京邮电大学:《C++大学基础教程》第十三章 异常处理.pdf
- 北京邮电大学:《C++大学基础教程》第1章 C++初步.pdf
- 襄阳职业技术学院:《计算机组装与维护》第十二章 BIOS设置的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第四章 内存的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第五章 外存储器的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第十章 网络设备的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第十一章 外围设备的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第六章 显卡与显示器的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第二章 CPU习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第三章 主板的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第九章 机箱和电源的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第一章 电脑概述习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第七章 声卡与音箱的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》第八章 输入设备的习题.doc
- 襄阳职业技术学院:《计算机组装与维护》教学大纲.doc
- 襄阳职业技术学院:《计算机组装与维护》第二章 中央处理器.ppt
- 襄阳职业技术学院:《计算机组装与维护》第一章 计算机系统概述.ppt
- 襄阳职业技术学院:《计算机组装与维护》第三章 主板.ppt
- 北京邮电大学:《C++大学基础教程》第3章 过程化语句.pdf
- 北京邮电大学:《C++大学基础教程》第2章 基本数据类型与表达式.pdf
- 北京邮电大学:《C++大学基础教程》第4章 函数.pdf
- 北京邮电大学:《C++大学基础教程》第6章 指针和引用.pdf
- 北京邮电大学:《C++大学基础教程》第5章 数组.pdf
- 北京邮电大学:《C++大学基础教程》第8章 类与对象.pdf
- 北京邮电大学:《C++大学基础教程》第7章 其它自定义数据类型.pdf
- 北京邮电大学:《C++大学基础教程》第9章 继承与派生.pdf
- 浙江大学:《操作系统教程》第十课 操作系统接口.ppt
- 浙江大学:《操作系统教程》第十一课 UNX磁盘文件卷结构.ppt
- 浙江大学:《操作系统教程》第二课 进程的描述和控制.ppt
- 浙江大学:《操作系统教程》第二课 操作系统结构续.ppt
- 浙江大学:《操作系统教程》第一课 操作系统引论.ppt
- 浙江大学:《操作系统教程》第三课 进程的同步和通讯.ppt
- 浙江大学:《操作系统教程》第四课 调度和死锁.ppt
- 浙江大学:《操作系统教程》第六课 虚拟存储器.ppt
- 浙江大学:《操作系统教程》第七课 设备管理.ppt
- 浙江大学:《操作系统教程》第五课 存储器管理.ppt
- 浙江大学:《操作系统教程》第八课 文件系统(File System).ppt
- 浙江大学:《操作系统教程》第九课 磁盘存储器管理.ppt