~ &= ^= |= && || %= [] () new delete
Để làm quá tải một toán tử chúng ta chỉ cần viết một hàm thành viên của lớp có
tên
operator
theo sau là toán tử chúng ta muốn làm quá tải. Mẫu như sau:
typeoperatorsign(parameters);
Dưới đây là ví dụ về việc quá tải toán tử
+
. Chúng ta chuẩn bị tính tổng hai
vector hai chiều
a(3,1)
và
b(1,2)
. Phép cộng giữa hai vector hai chiều chỉ đơn
giản là cộng hai toạ độ x để lấy toạ độ kết quả x , cộng hai toạ độ y để lấy toạ
độ kết quả y. Trong trường hợp này kết quả sẽ là
(3+1,1+2) = (4,3)
.
// vectors: ví dụ về quá tải toán tử
#include <iostream.h>
class CVector {
public:
int x,y;
CVector () {};
CVector (int,int);
CVector operator + (CVector);
};
CVector::CVector (int a, int b) {
x = a;
y = b;
}
CVector CVector::operator+ (CVector param) {
CVector temp;
temp.x = x + param.x;
temp.y = y + param.y;
return (temp);
}
int main () {