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

Lập trình hướng đối tượng-Khuôn hình

Chia sẻ: Phan Thi Ngoc Giau | Ngày: | Loại File: PDF | Số trang:13

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

Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. Lập trình hướng đối tượng Lập trình hướng đối tượng Hà Văn Sang Hà Văn Sang Bộ môn: Tin học TC – KT Khoa HTTT, Khoa: Hệ Thống Thông Tin Kinh tế - Học Viện Tài Chính Academy Of Finance, Hanoi Tel: 0982.165.568 Email: sanghv@hvtc.edu.vn Website: http://www.hvtc.edu.vn/sanghv 2/11/2012 9:53 AM Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. Lập trình hướng đối tượng CHƯƠNG VI Hà Văn Sang Khoa HTTT, Academy Of Finance, Hanoi 2/11/2012 9:53 AM Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Khuôn hình hàm Định nghĩa Ví dụ 1:...

Chủ đề:
Lưu

Nội dung Text: Lập trình hướng đối tượng-Khuôn hình

  1. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. Lập trình hướng đối tượng Lập trình hướng đối tượng Hà Văn Sang Hà Văn Sang Bộ môn: Tin học TC – KT Khoa HTTT, Khoa: Hệ Thống Thông Tin Kinh tế - Học Viện Tài Chính Academy Of Finance, Hanoi Tel: 0982.165.568 Email: sanghv@hvtc.edu.vn Website: http://www.hvtc.edu.vn/sanghv 2/11/2012 9:53 AM 2/11/2012
  2. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. Lập trình hướng đối tượng CHƯƠNG VI Hà Văn Sang Khoa HTTT, Academy Of Finance, Hanoi 2/11/2012 9:53 AM 2/11/2012
  3. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Khuôn hình hàm Định nghĩa Ví dụ 1: xây dựng hàm tìm max của hai số thực -Xây dựng hàm tính max của ba số thực -Xây dựng hàm tính max của n số thực Giải quyết: •Nạp chồng hàm max Vấn đề được giải quyết, nhưng phải viết n hàm 3 Object Oriented Programing– Information Systems Department
  4. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Khuôn hình hàm Ví dụ 2: xây dựng hàm tìm max của hai số bất kỳ Giải quyết: int max(int a, int b){ if(a>b) return a; elsse return b;} float max(float a, float b){ if(a>b) return a; elsse return b;} 4 Object Oriented Programing– Information Systems Department
  5. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Khuôn hình hàm Khái niệm Là mẫu của hàm có tham số là kiểu của đối số Với mỗi giá trị hợp lệ của đối số sẽ phát sinh một hàm cụ thể gọi là hàm thể hiện Khai báo: template ([ds tham số]) { //thân khuôn hình hàm } 5 Object Oriented Programing– Information Systems Department
  6. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Khuôn hình hàm Ví dụ1 : template T max(T a, T b){ if(a>b) return a ; else return b;} Ví dụ 2: xây dựng khuôn hình tính tổng 3 số bất kỳ template T1 tong(T1 x, T2 y, T3 z) { return x+y+z ; } 6 Object Oriented Programing– Information Systems Department
  7. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Khuôn hình hàm Gọi hàm từ khuôn hình hàm (đối số) Tên hàm trùng tên khuôn hình hàm Ví dụ: int a,b ; float x,y ; max(a,b) ; 7 Object Oriented Programing– Information Systems Department
  8. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 1. Khuôn hình hàm Với khuôn hình hàm max: int a,b; max(a,b) Khi đó chương trình dịch sẽ xác định: -Kiểu của a,b là int nên kiểu của T cũng sẽ là int -Phát sinh một hàm cụ thể từ khuôn hình hàm max -Hàm max lúc này sẽ như sau: int max(int a, int b) { if(a>b) return a ; else return b; } 8 Object Oriented Programing– Information Systems Department
  9. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Khuôn hình lớp Ví dụ: xây dựng lớp MT1 với: •Số phần tử •Mảng các phần tử kiểu: int, char, float, long ... •Các phương thức: nhập, in, cộng, trừ Nhận xét: -Với mỗi kiểu dữ liệu của mảng sẽ có 1 lớp -Các lớp này có chung các thao tác -Chỉ kiểu dữ liệu của mảng là khác  C++ cho phép xây dựng một mẫu của lớp, mẫu này có tham số để ứng với mỗi giá trị của tham số sẽ phát sinh một lớp 9 Object Oriented Programing– Information Systems Department
  10. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Khuôn hình lớp Khái niệm •Là một mẫu của lớp có các tham số là các kiểu dữ liệu (tham số kiểu) •Với mỗi giá trị của tham số kiểu sẽ phát sinh ra một thể hiện là một lớp cụ thể (lớp khuôn hình) Khai báo: template class { }; 10 Object Oriented Programing– Information Systems Department
  11. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Khuôn hình lớp Ví dụ: template class MT1{ int spt; T d[10]; public: void nhap(); void in(); …} 11 Object Oriented Programing– Information Systems Department
  12. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Khuôn hình lớp Định nghĩa phương thức -Định nghĩa bên trong khai báo của khuôn hình như hàm thông thừơng - Định nghĩa bên ngoài khai báo Ví dụ: template void MT::nhap() { … } 12 Object Oriented Programing– Information Systems Department
  13. Generated by Foxit PDF Creator © Foxit Software http://www.foxitsoftware.com For evaluation only. 2. Khuôn hình lớp Sử dụng khuôn hình lớp - Mỗi giá trị của tham số kiểu, chương trình dịch sẽ phát sinh ra một lớp cụ thể Cú pháp: Khai báo đối tựơng: Ví dụ: MT a; MT b; MT c; 13 Object Oriented Programing– Information Systems Department
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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