当运算符重载函数作为成员函数实现:最左边的操作数必须是运算符的一个类对象或者是对该类对象的一个引用。函数的参数比原来的操作数个数少一个(后置的++、--除外,需要一个int形参),因为第一个操作数会被作为函数调用的目的对象,因此无需出现在参数表中,函数题可以直接访问第一个操作数的成员。
当运算符重载函数作为友元函数实现:当访问类的private或protected数据成员时必须指定为友元函数。参数个数与原操作数个数相同,运算符的所有操作数必须显示通过参数传递。
当运算符重载函数作为成员函数实现:最左边的操作数必须是运算符的一个类对象或者是对该类对象的一个引用。函数的参数比原来的操作数个数少一个(后置的++、--除外,需要一个int形参),因为第一个操作数会被作为函数调用的目的对象,因此无需出现在参数表中,函数题可以直接访问第一个操作数的成员。
当运算符重载函数作为友元函数实现:当访问类的private或protected数据成员时必须指定为友元函数。参数个数与原操作数个数相同,运算符的所有操作数必须显示通过参数传递。