第12篇 运算符(operator)重载.pptVIP

  • 2
  • 0
  • 约3.66千字
  • 约 19页
  • 2017-06-09 发布于湖北
  • 举报
第12章 运算符(operator)重载 什么是运算符重载 运算符重载的基本方法 运算符重载的一般规则 用成员函数重载运算符 用友元函数重载运算符 算术运算符、关系运算符的重载 1. 什么是运算符重载 (1)问题的提出:在前面的章节中,我们学习了基本数据类型和运算符的有关内容,知道3+19、84.7-23.8等式子是成立的。 假设已定义了日期类Date,复数类Complex 现在定义几个对象: Date d1(2008,10,1),d2(2010,11,12); Complex c1(3,4), c2(4,-5); 问题: (1)能否用 d2-d1 求出2008年国庆距离2010年广州亚运会(第16届)开幕的天数? (2)能否用 c1+c2 求出两个复数之和? 回答是否定的! 事实上,C++预定义的+、-、*、/、、=、、=、==、!=等一系列运算符的操作对象只能是基本数据类型,要让它们在用户自定义的数据类型(如:类)中也能类似使用,就需要对运算符赋予多种含义,这就是运算符重载。 (2)运算符重载的概念:对C++中的已有运算符赋予更多的含义,使之作用于特定类的对象,实现特定的功能,而且使用形式与基本数据类型的形式相同。 要理解运算符重载的含义,需要把握其中的 “变”与“不变”: 运算符不变,重载只能考虑C++现有的运算符,不允许用户定义新的运算符;

文档评论(0)

1亿VIP精品文档

相关文档