在 C++ 中,可以使用 "重载" 操作符的特殊成员函数来定义类重写操作符。 例如,如果你想让类的对象可以使用加号(+)进行加法运算,你可以在类中定义一个 "operator+" 的成员函数:
class MyClass {
public:
// 定义 operator+ 成员函数
MyClass operator+(const MyClass& other) {
// 实现加法运算的代码
}
};
然后,你就可以像使用内置类型的加法运算符一样使用类重写的加法运算符:
MyClass a, b, c;
c = a + b;
你可以重写的操作符包括:
- 算术操作符:+、-、*、/、%
- 关系操作符:==、!=、<、>、<=、>=
- 逻辑操作符:&&、||、!
- 位运算符:&、|、^、~、<<、>>
- 赋值操作符:=、+=、-=、*=、/=、%=、&=、|=、^=、<<=、>>=
- 下标操作符:[]
- 调用操作符:()
- 前缀递增/递减操作符:++、--
- 后缀递增/递减操作符:++、--
- 其他操作符:->、->*、new、delete、new[]、delete[]、,、?、:
注意,你不能重写所有的操作符,也不能重写内置类型的操作符。例如,你不能重写 "." 或 "::" 操作符。
希望这对你