轻松学C++之运算符重载.pptxVIP

  • 5
  • 0
  • 约4.35千字
  • 约 60页
  • 2016-11-28 发布于河南
  • 举报
轻松学C之运算符重载

第12章 运算符重载前一章介绍了多态的实现技术,主要包括函数的重载和虚函数。本章介绍实现多态的另外一个方法——运算符重载及类类型转换。12.1 运算符重载概述运算符重载实现的是编译时的多态,是对已有的运算符赋予多重含义,使同一个运算符作用于不同类型的数据时,导致不同类型的行为。12.1.1 运算符重载C++预定义的运算符只是针对基本数据类型,而对于自定义的数据类型,比如类,却没有类似的运算符。于是,引入运算符重载的目的如图12-1所示。图12-1 引入运算符重载的目的运算符重载是运用函数重载的方法,对C++提供的标准运算符重新定义,以完成某种特定的操作。C++中的每一个运算符对应着一个运算符函数,在实现过程中,把指定的运算表达式中的运算符转化为对运算符函数的调用,而表达式中的运算对象转化为运算符函数的实参,这个过程是在编译阶段完成的。如图12-2中的例子。图12-2 编译阶段转换因此,可以将运算符重载看做是一种特殊的函数重载。运算符函数定义的一般形式如图12-3所示。图12-3 运算符函数定义的一般形式12.1.2 运算符重载的特点尽管运算符重载是一种特殊的函数重载,但相比函数重载,运算符重载有着自身的一些特点。运算符重载使用operator关键字对重载函数进行标识和定义,其有三种形式,如表12-1所示。表12-1 三种运算符的operator表示形式运算符分类常规

文档评论(0)

1亿VIP精品文档

相关文档