美文网首页
C++入门笔记 OOP与类3

C++入门笔记 OOP与类3

作者: 被子十三 | 来源:发表于2018-11-14 13:31 被阅读5次

运算符重载

在C++中,运算符的重载可以看作一种特殊的函数。一元运算符有一个参数;二元运算符有两个参数。对于二元运算符而言,第一个参数作为运算符的左值,第二个参数作为运算符的右值。
如果运算符为成员函数(方法),其第一个参数默认为*this,此时一元运算符不需要参数,二元运算符需要一个参数。

运算符重载应当作为类成员还是非成员?

  • 赋值=,下标[],调用()和成员访问箭头->的运算符必须要定义为类成员
  • 复合赋值+=, -=等常理应当定义为类成员
  • 转变对象状态的运算符或者和类型绑定的运算符,如递增++,递减--应当定义为类成员
  • 对称运算符——左右值可互换的运算符,如算术运算符,相等运算符,位运算符,应当定义为成员。

相关文章

网友评论

      本文标题:C++入门笔记 OOP与类3

      本文链接:https://www.haomeiwen.com/subject/dtzdfqtx.html