Lập trình hệ điều hành
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 Tin Kinh Khoa: Hệ Thống Thông HTTT, tế - Học Viện Tài Chính Tel: 0982.165.568Academy Of Finance, Hanoi Email: sanghv@hvtc.edu.vn Website: http://www.hvtc.edu.vn/sanghv 11/01/12 16:38 Lập trình hướng đối tượng CHƯƠNG VI Hà Văn Sang Khoa HTTT, Academy Of Finance, Hanoi 11/01/12 16:38 Khn hình hàm Định nghĩa Ví dụ 1: xây dựng hàm tìm max hai số thực -Xây dựng hàm tính max ba số thực -Xây dựng hàm tính max n số thực Giải quyết: •Nạp chồng hàm max Vấn đề giải quyết, phải viết n hàm Object Oriented Programing– Information Systems Department Khn hình hàm Ví dụ 2: xây dựng hàm tìm max hai số 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;} Object Oriented Programing– Information Systems Department Khn hình hàm Khái niệm Là mẫu hàm có tham số kiểu đối số Với giá trị hợp lệ đối số phát sinh hàm cụ thể gọi hàm thể Khai báo: template ([ds tham số]) { //thân khn hình hàm } Object Oriented Programing– Information Systems Department Khn 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 khn hình tính tổng số template T1 tong(T1 x, T2 y, T3 z) { return x+y+z ; } Object Oriented Programing– Information Systems Department Khn hình hàm Gọi hàm từ khn hình hàm (đối số) Tên hàm trùng tên khn hình hàm Ví dụ: int a,b ; float x,y ; max(a,b) ; Object Oriented Programing– Information Systems Department Khn hình hàm Với khn hình hàm max: int a,b; max(a,b) Khi chương trình dịch xác định: -Kiểu a,b int nên kiểu T int -Phát sinh hàm cụ thể từ khn hình hàm max -Hàm max lúc sau: int max(int a, int b) { if(a>b) return a ; else return b; } Object Oriented Programing– Information Systems Department Khn hình lớp Ví dụ: xây dựng lớp MT1 với: •Số phần tử •Mảng 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 kiểu liệu mảng có lớp -Các lớp có chung thao tác -Chỉ kiểu liệu mảng khác C++ cho phép xây dựng mẫu lớp, mẫu có tham số để ứng với giá trị tham số phát sinh lớp Object Oriented Programing– Information Systems Department Khn hình lớp Khái niệm •Là mẫu lớp có tham số kiểu liệu (tham số kiểu) •Với giá trị tham số kiểu phát sinh thể lớp cụ thể (lớp khn hình) Khai báo: template class { }; Object Oriented Programing– Information Systems Department 10 Khn hình lớp Ví dụ: template class MT1{ int spt; T d[10]; public: void nhap(); void in(); …} Object Oriented Programing– Information Systems Department 11 Khn hình lớp Định nghĩa phương thức -Định nghĩa bên khai báo khn hàm thơng thừơng - Định nghĩa bên ngồi khai báo Ví dụ: template void MT::nhap() { … } Object Oriented Programing– Information Systems Department 12 Khn hình lớp Sử dụng khn hình lớp - Mỗi giá trị tham số kiểu, chương trình dịch phát sinh lớp cụ thể Cú pháp: Khai báo đối tựơng: Ví dụ: MT a; MT b; MT c; Object Oriented Programing– Information Systems Department 13 .. .Lập trình hướng đối tượng CHƯƠNG VI Hà Văn Sang Khoa HTTT, Academy Of Finance, Hanoi 11/01/12 16:38... Information Systems Department Khn hình hàm Với khn hình hàm max: int a,b; max(a,b) Khi chương trình dịch xác định: -Kiểu a,b int nên kiểu T int -Phát sinh hàm cụ thể từ khn hình hàm max -Hàm... thể (lớp khn hình) Khai báo: template class { }; Object Oriented Programing– Information Systems Department 10 Khn hình lớp Ví dụ: