除了类属关系运算符"."、成员指针运算符".*"、作用域运算符"::"、sizeof运算 二元运算符中,第一个操作数为非对象时,必须使用友元函数。如输入输出运算符<<和>>符和三目运算符"?:"以外,C++中的所有运算符都可以重载。
下标运算符必须是成员函数,下标运算符通常以所访问元素的引用作为返回值,同时最好定义下标运算符的常量版本和非常量版本;
箭头运算符必须是类的成员,解引用通常也是类的成员;重载的箭头运算符必须返回类的指针;
二元运算符中,第一个操作数为非对象时,必须使用友元函数。如输入输出运算符<<和>>,为什么要用友元函数呢,因为为非成员函数时,需要访问类的数据成员,需要有访问权限,所以往往需要设置为友元