- 返回对象引用的运算符重载可以连续调用,如a+b+c
- 运算符重载规则:
- 重载后的运算符至少有一个操作数是用户定义的类型
- 使用运算符不能违反运算符原来的句法规则
- 不能创建新运算符
- 运算符能够重载
- 运算符能通过成员或非成员函数重载
- 友元函数不是成员函数,不能使用成员运算符调用,但它与成员函数的访问权限相同
- 如果要为类重载运算符,并将非类的项作为第一个操作数,可使用友元函数反转操作数的顺序
- 如果方法通过计算得到一个新的类对象,则考虑是否可以使用类构造函数来完成这项工作,主要不仅可以避免麻烦,而且可以确保新对象是按正确的方式创建
- c++关键字 explicit:该函数只能显式转换,用于构造函数或转换函数
- 转换函数是用户定义的强制类型转换,可以像使用强制类型转换那样使用
operator typeName();
- 若经常使用,则重载法更合适;如果只是偶尔使用,则依赖自动转换更方便
c++primer第11章 使用类 学习笔记
最新推荐文章于 2024-07-20 22:49:13 发布