運算重載符不可以改變語法結構、不可以改變操作數的個數、不可以改變優先級、不可以改變結合性。
自定義類Object,重載運算符:
| 運算符 | 說明 | 成員函數原型 | 全局函數原型 |
| 前++ | 自身加1 | Object& Object::operator ++ () | |
| 后++ | 自身加1 | Object Object::operator ++ (int) | |
| 前-- | 自身減1 | Object& Object::operator -- () | |
| 后-- | 自身減1 | Object Object::operator -- (int) | |
| + | 加 | Object Object::operator + (const Object&) | Object operator + (const Object&, const Object&) |
| - | 減 | Object Object::operator - (const Object&) | Object operator - (const Object&, const Object&) |
| * | 乘 | Object Object::operator * (const Object&) | Object operator * (const Object&, const Object&) |
| / | 除 | Object Object::operator / (const Object&) | Object operator / (const Object&, const Object&) |
| % | 取余 | Object Object::operator % (const Object&) | Object operator % (const Object&, const Object&) |
| - | 負號 | Object operator - () |
邏輯運算符
| 運算符 | 說明 | 成員函數原型 | 全局函數原型 |
| && | 且 | bool Object::operator && (const Object&) | Object operator && (const Object&, const Object&) |
| || | 或 | bool Object::operator || (const Object&) | Object operator || (const Object&, const Object&) |
| ! | 邏輯非 | bool Object::operator ! () |
位運算符
| 運算符 | 說明 | 成員函數原型 | 全局函數原型 |
| & | 位且 | Object Object::operator & (const Object&) | Object operator & (const Object&, const Object&) |
| | | 位或 | Object Object::operator | (const Object&) | Object operator | (const Object&, const Object&) |
| ^ | 異或 | Object Object::operator ^ (const Object&) | Object operator ^ (const Object&, const Object&) |
| ~ | 按位取反 | Object Object::operator ~ () | |
| << | 左移 | Object Object::operator << (int) | Object operator << (const Object&, int) |
| >> | 右移 | Object Object::operator >> (int) | Object operator >> (const Object&, int) |
關系運算符
| 運算符 | 說明 | 成員函數原型 | 全局函數原型 |
| = | 賦值 | Object& Object::operator = (const Object& other) | |
| == | 相等 | bool Object::operator == (const Object& other) | bool operator == (const Object&, const Object&) |
| != | 不相等 | bool Object::operator != (const Object& other) | bool operator != (const Object&, const Object&) |
| < | 小於 | bool Object::operator < (const Object& other) | bool operator < (const Object&, const Object&) |
| <= | 小於等於 | bool Object::operator <= (const Object& other) | bool operator <= (const Object&, const Object&) |
| > | 大於 | bool Object::operator > (const Object& other) | bool operator > (const Object&, const Object&) |
| >= | 大於等於 | bool Object::operator >= (const Object& other) | bool operator >= (const Object&, const Object&) |
成員運算符
| 運算符 | 說明 | 成員函數原型 | 全局函數原型 |
| -> | 指針,可用於智能指針的封裝,Type為其他類型 | Type* Object::operator -> () |
