GIÁO TRÌNH C++ - Trang 80

~ &= ^= |= && || %= [] () 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)

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 () {

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.