C++運算符重載規則

運算符重載時要遵循如下規則:函數

 ( 1 ) 除了類屬關係運算符 " . " 、成員指針運算符 " .* " 、做用域運算符 " :: " 、sizeof運算符和三目運算符 " ?: " 之外,C ++ 中的全部運算符均可以重載。
 
( 2 ) 重載運算符限制在C ++ 語言中已有的運算符範圍內的容許重載的運算符之中,不能建立新的運算符。
 
( 3 ) 運算符重載實質上是函數重載,所以編譯程序對運算符重載的選擇,遵循函數重載的選擇原則。
 
( 4 ) 重載以後的運算符不能改變運算符的優先級和結合性,也不能改變運算符操做數的個數及語法結構。
 
( 5 ) 運算符重載不能改變該運算符用於內部類型對象的含義。它只能和用戶自定義類型的對象一塊兒使用,或者用於用戶自定義類型的對象和內部類型的對象混合使用時。
 
( 6 ) 運算符重載是針對新類型數據的實際須要對原有運算符進行的適當的改造,重載的功能應當與原有功能相相似,避免沒有目的地使用重載運算符
相關文章
相關標籤/搜索