一.运算符重载的含义与定义方式
C++已有的运算符只适合处理C++的基本数据类型。
C++允许重新定义已有的运算符(运算符重载),以便它能处理程序员定义类型(类类型)。
运算符重载就是赋予已有的运算符多重含义。运算符重载与函数重载类似,是它的特殊类型。
C++通过重新定义运算符,使它能够用于特定类的对象执行特定的功能。
通过对+,-,*,/运算符的重新定义,使它们可以完成复数、分数等不同类的对象的加、减、乘、除运算操作。增强了C++语言的扩充能力。
先创建一个运算符函数,一般定义成类的成员函数或友元函数。
二.重载一个运算符原则:
1.不能改变运算符的初始意义。
2.不能改变运算符的参数数目。如重载运算符+时只用一个操作数是错误的。
3.运算符函数不能包括缺省的参数。
4.绝大部分C++运算符都可以重载,除以下的例外:
. :: .* ?
5.除赋值运算符外,其它运算符函数都