![](https://csdnimg.cn/release/download_crawler_static/86561558/bg1.jpg)
CHƯƠNG 4:
ĐỊNH NGHĨA TOÁN TỬ TRÊN LỚP
Định nghĩa các phép toán cho kiểu dữ liệu lớp và cấu trúc
Các toán tử chuyển kiểu áp dụng cho kiểu dữ liệu lớp
![](https://csdnimg.cn/release/download_crawler_static/86561558/bg2.jpg)
CHƯƠNG 4:
ĐỊNH NGHĨA TOÁN TỬ TRÊN LỚP
1. GIỚI THIỆU
Trong C
a+b
Kí hiệu + tuỳ theo kiểu của a và b có thể biểu thị
-Phép cộng hai số nguyên
-Phép cộng hai số thực (float)
-Phép cộng hai số thực (double)
-Phép cộng một số nguyên vào một con trỏ
Trong C++ có thể định nghĩa chồng đối với hầu hết các phép toán trên các lớp, ví dụ ta định nghĩa một
lớp complex để biểu diễn số phức thì có thể viết a+b, a-b, a*b, a/b với a, b là các đối tượng số phức
Hàm toán tử cho phép ta định nghĩa chồng phép toán, hàm toán tử có tên được ghép bởi từ khoá
operator và kí hiệu của phép toán đi kèm
![](https://csdnimg.cn/release/download_crawler_static/86561558/bg3.jpg)
CHƯƠNG 4:
ĐỊNH NGHĨA TOÁN TỬ TRÊN LỚP
1. GIỚI THIỆU
Hàm toán tử có thể dùng như một hàm thành phần của lớp hoặc là hàm tự do; khi đó hàm toán tử cần
được khai báo là bạn của các lớp có các đối tượng mà hàm thao tác
Tên hàm Chức năng
operator+ Định nghĩa phép +
operator* Định nghĩa phép nhân
operator/ Định nghĩa phép chia
operator+= Định nghĩa phép cộng =
operator!= Định nghĩa phép so sánh khác nhau
![](https://csdnimg.cn/release/download_crawler_static/86561558/bg4.jpg)
CHƯƠNG 4:
ĐỊNH NGHĨA TOÁN TỬ TRÊN LỚP
2. VÍ DỤ TRÊN LỚP SỐ PHỨC
2.1 Hàm toán tử là hàm thành phần
#include <iostream.h>
#include <conio.h>
#include <math.h>
class complex {
float real, image;
public:
complex(float r=0, float i =0) {
real = r; image = i;
}
void display() {
cout<<real<<(image>=0?'+':'-
')<<"j*"<<fabs(image)<<endl;
}
complex operator+(complex b) {
complex c;
c.real = real+b.real;
c.image =image+b.image;
return c;
}
};
void main() {
clrscr();
complex a(-2,5);
complex b(3,4);
cout<<"Hai so phuc:\n";
a.display();
b.display();
![](https://csdnimg.cn/release/download_crawler_static/86561558/bg5.jpg)
CHƯƠNG 4:
ĐỊNH NGHĨA TOÁN TỬ TRÊN LỚP
2. VÍ DỤ TRÊN LỚP SỐ PHỨC
2.1 Hàm toán tử là hàm thành phần
cout<<"Tong hai so phuc:\n";
complex c;
c=a+b;//a.operator+(b)
c.display();
getch();
}