目录 1.一般运算符重载 2.关系运算符重载 3.逻辑运算符
重载 4.单目运算符重载 5.自增减运算符重载 6.位运算符重载
7.赋值运算符重载 8.内存运算符重载 9.特殊运算符重载 10.
总结 c++的一大特性就是重载(overload),通过重载可以把功
能相似的几个函数合为一个,使得程序更加简洁、高效。在
c++中不止函数可以重载,运算符也可以重载。由于一般数
据类型间的运算符没有重载的必要,所以运算符重载主要是
面向对象之间的。
在进行对象之间的运算时,程序会调用与运算符相对应的函
数进行处理,所以运算符重载有两种方式:成员函数和友元
函数。成员函数的形式比较简单,就是在类里面定义了一个
与操作符相关的函数。友元函数因为没有 this 指针,所以形
参会多一个。
class A{public: A(int d):data(d){} A operator+(A&);//成员函数
A operator-(A&); A operator*(A&); A operator/(A&); A
operator%(A&); friend A operator+(A&,A&);//友元函数 friend
A operator-(A&,A&); friend A operator*(A&,A&); friend A
operator/(A&,A&); friend A operator%(A&,A&);private: int
data;};//成员函数的形式 A A::operator+(A &a){ return