C++運算符重載的規則

運算符重載的規則以下:函數

一、C++中的運算符除了少數幾個以外,所有能夠重載,並且只能重載C++中已經有的運算符。指針

二、重載以後運算符的優先級和結合性都不會改變對象

三、運算符重載是針對新類型數據的實際須要,對原有運算符進行適當的改造,通常來說,重載的功能應當與原有功能相相似,不能改變原運算符的操做對象個數,同時至少要有一個操做對象是自定義類型。作用域

    注意:不能重載的運算符只有5個,它們是類屬關係運算符「.」、成員指針運算符「.*」、做用域分辨符「::」、sizeof運算符和三木運算符「?:」。前面兩個運算符保證了C++中訪問成員功能的含義不被改變。做用域分辨符和sizeof運算符的操做數是類型。原型

四、  運算符的重載形式有兩種,重載爲類的成員函數和重載爲類的友元函數。語法

  • 運算符重載爲類的成員函數的通常語法形式爲:

函數類型  operator 運算符(形參表)數據

{co

     函數體block

}運算符

  • 運算符重載爲類的友元函數,能夠在類中聲明友元函數的原型,在類外實現,也能夠在類體中實現
相關文章
相關標籤/搜索