intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Ngôn ngữ lập trình: Nạp chồng toán tử - Nguyễn Thị Phương Dung

Chia sẻ: _ _ | Ngày: | Loại File: PDF | Số trang:23

12
lượt xem
2
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Ngôn ngữ lập trình: Nạp chồng toán tử cung cấp cho người học những kiến thức như: Tại sao phải nạp chồng toán tử?; Các cách nạp chồng toán tử; Nạp chồng các toán tử . Mời các bạn cùng tham khảo!

Chủ đề:
Lưu

Nội dung Text: Bài giảng Ngôn ngữ lập trình: Nạp chồng toán tử - Nguyễn Thị Phương Dung

  1. NGÔN NGỮ LẬP TRÌNH Nạp chồng toán tử 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 1
  2. NỘI DUNG • Tại sao phải nạp chồng toán tử? • Các cách nạp chồng toán tử • Nạp chồng các toán tử 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 2
  3. Tại sao phải nạp chồng toán tử?
  4. Xét 2 ví dụ sau 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 4
  5. Kết luận  +, -, *, /, %,  Là những toán tử đã được xây dựng sẵn  Được dùng cho các kiểu cơ bản trong C/C++  Nhưng chưa dùng được cho các kiểu người dùng định nghĩa => Muốn dùng thì phải nạp chồng 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 5
  6. Các cách nạp chồng toán tử Nạp chồng ngoài lớp Hàm nạp chồng không phải là hàm thành viên của lớp Nạp chồng trong lớp Hàm nạp chồng là hàm thành viên của lớp
  7. Nạp chồng ngoài lớp
  8. Nạp chồng ngoài lớp Cú pháp nạp chồng toán tử 1 ngôi: kieutrave operator toántử(kieutoanhang toanhang) Cú pháp nạp chồng toán tử 2 ngôi: kieutrave operator toántử(kieutoanhang toanhang1, kieutoanhang toanhang2) Trong đó: operator: là từ khóa nạp chồng toán tử Toántử: là các ký hiệu +, -, *, /, % 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 8
  9. Xét ví dụ 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 9
  10. Vấn đề Trong hàm nạp chồng sử dụng đến các thành phần private của đối tượng Hàm nạp chồng không thuộc lớp => không truy cập vào các thành phần private được 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 10
  11. Giải pháp 1 Phải truy cập qua các hàm thành viên của lớp 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 11
  12. Ví dụ cho giải pháp 1 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 12
  13. Giải pháp 2 Sử dụng hàm bạn Hàm bạn là hàm có thể truy cập được vào các thành phần private của lớp Phải khai báo hàm bạn trong lớp Phải có từ khóa friend ở đầu khai báo hàm 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 13
  14. Ví dụ cho giải pháp 2 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 14
  15. Nạp chồng trong lớp
  16. Nạp chồng trong lớp Cú pháp nạp chồng toán tử 1 ngôi: kieutrave operator toántử() Cú pháp nạp chồng toán tử 2 ngôi: kieutrave operator toántử(kieutoanhang toanhang) Trong đó: operator: là từ khóa nạp chồng toán tử Toántử: là các ký hiệu +, -, *, /, %
  17. Ví dụ 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 17
  18. Sự khác biệt giữa 2 cách nạp chồng Nạp chồng trong lớp có: Số lượng tham số của hàm ít hơn Vì khi nạp chồng trong lớp, toán hạng 1 được hiểu chính là đối tượng gọi hàm 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 18
  19. Bài tập  Xây dựng một lớp phân số (đặt tên là PhanSo) bao gồm:  Các thành phần dữ liệu tử số và mẫu số  Ít nhất hai hàm tạo: hàm tạo mặc định và hàm tạo có tham số  Phương thức nhập và hiển thị dữ liệu cho phân số  Xây dựng phương thức nạp chồng toán tử +, - , *, /  Viết một hàm main, khai báo và nhập dữ liệu cho 3 phân số ps1, ps2, ps3. Tính toán và hiển thị các kết quả sau:  ps4 = ps1 + ps2 - ps3  ps4 = ps1 * ps2 / ps3  ps4 = (ps1+1) + ps2/2 – ps3 16/04/2018 Nguyễn Thị Phương Dung - Khoa CNTT - ĐHSPHN 19
  20. Nạp chồng toán tử nhập (>>), xuất(
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2