设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

C++运算符重载注意事宜以及汇总

发布时间:2022-07-01 12:55 所属栏目:51 来源:互联网
导读:在 C++ 中进行运算符重载时,有以下问题需要注意: 重载后运算符的含义应该符合原有用法习惯。例如重载+运算符,完成的功能就应该类似于做加法,在重载的+运算符中做减法是不合适的。此外,重载应尽量保留运算符原有的特性。 C++ 规定,运算符重载不改变运算
  在 C++ 中进行运算符重载时,有以下问题需要注意:
  重载后运算符的含义应该符合原有用法习惯。例如重载+运算符,完成的功能就应该类似于做加法,在重载的+运算符中做减法是不合适的。此外,重载应尽量保留运算符原有的特性。
  C++ 规定,运算符重载不改变运算符的优先级。
  以下运算符不能被重载:.、.*、::、? :、sizeof。
  重载运算符()、[]、->、或者赋值运算符=时,只能将它们重载为成员函数,不能重载为全局函数。
 
  运算符重载的实质是将运算符重载为一个函数,使用运算符的表达式就被解释为对重载函数的调用。
 
  运算符可以重载为全局函数。此时函数的参数个数就是运算符的操作数个数,运算符的操作数就成为函数的实参。
 
  类型的名字可以作为强制类型转换运算符,也可以被重载为类的成员函数。它能使得对象被自动转换为某种类型。
 
  自增、自减运算符各有两种重载方式,用于区别前置用法和后置用法。
 
  运算符重载不改变运算符的优先级。重载运算符时,应该尽量保留运算符原本的特性。

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读