c++可以對操作符(operator)進行過載,一般定義在類的成員函式中,以下面的**為例.
class
point
//定義乙個類模板
;//建構函式
~point()
;//析構函式
//過載算術操作符+ ( - * / = )類似
point&
operator+(
const point& other)
;//過載關係操作符== ( != && || )類似
bool
operator==(
const point& other)
;private
:int m_x;
//成員變數m_x
int m_y;
//成員變數m_y
};
//編寫類的成員函式
point& point::
operator+(
const point& other)
bool point::
operator==(
const point& other)
else
}
實現操作符過載時,需要注意:
過載後操作符的運算元至少有乙個是使用者定義型別;
不能違反原來運算元的語法規則;
不能建立新的操作符;
不能過載的操作符包括(以空格分隔):sizeof . .* :: ?: rtti型別運算子
=、()、、以及 ->操作符只能被類的成員函式過載
C 操作符過載
1.作為成員過載 class myclass public myclass operator const myclass d cons friend myclass operator const myclass a1,const myclass a2 關於返回值型別的討論 呼叫者堆疊裡返回乙個物件效...
C 過載操作符
過載操作符 一 過載操作符的定義 1.過載操作符的結構 返回型別 operator 需要過載的操作符 形參列表 注意 形引數目應和運算元數目相同。2.過載操作符的幾條注意事項 1 過載的操作符名不能通過連線其他合法符號來建立任何新的操作符。如 2 過載操作符必須具備至少乙個類型別或列舉型別的運算元。...
c 操作符過載
過載操作符 一 限制 1 不能增加新的操作符 2 有些操作符不能過載,如.物件中的訪問成員 作用域解析操作符 sizeof 三元操作符 3 不能改變操作符的元數,元數是指與操作符相關的引數或運算元個數。比如一元操作符 只能應用於乙個操作符 4 不能改變操作符的優先順序 5 不能重新定義內建型別的操作...