C++运算符重载一:运算符重载、复数类CComplex、输出运算符重载
文章目录 一、运算符重载 二、复数类CComplex 三、输出运算符重载 一、运算符重载 运算符重载 : 使对象的运算运算表现得和编译器内置类型一样,使同一个运算符可以有不同的功能。即定义一个重载运算符的函数,使指定的运算符不仅能实现原有的功能,而且能实现在函数中指定的新的功能。 运算符重载实质上是函数的重载,重载运算符的函数一般格式如下 : 函数类型 operator 运算符名称(形参表) {对运算符的重载处理} operator是关键字,是专门用于定义重载运算符的函数的,运算符名就是C++已有的运算符。 运算符重载的规则: (1)C++不允许用户自己定义新的运算符,只能对已有的C++运算符进行重载。 (2)C++允许重载的运算符 不能重载重载的运算符只有5个: ① . 成员访问运算符 ② * 成员指针访问运算符 ③ :: 域运算符 ④sizeof 长度运算符 ⑤ ?: 条件运算符 (3)重载不能改变运算符运算对象(即操作数)的个数 (4)重载不能改变运算符的优先级别 (5)重载不能改变运算符的结核性 (6)重载不能改变默认的参数 (7)重载的运算符必须和用户自定义类型的对象一起使用,其参数至少有一个是类对象(或类对象的引用) (8)用于类对象的运算符一般必须重载,但有两个例外,“=”和“&”不必用户重载 运算符重载的函数有两种处理方式: 1