Danh mục

Bài giảng Lập trình hướng đối tượng: Virtual method và Polymorphism - Trần Phước Tuấn

Số trang: 12      Loại file: pdf      Dung lượng: 222.49 KB      Lượt xem: 4      Lượt tải: 0    
Thư Viện Số

Hỗ trợ phí lưu trữ khi tải xuống: 1,000 VND Tải xuống file đầy đủ (12 trang) 0

Báo xấu

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng Lập trình hướng đối tượng: Virtual method và Polymorphism trình bày các nội dung chính như: Nối kết tĩnh (Static binding), nối kết động (Dynamic binding), chạy chương trình, bài toán thực tế, phương thức ảo,...và một số nội dung khác
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng: Virtual method và Polymorphism - Trần Phước Tuấn N i dung L P TRÌNH 1. i k t t nh (Static binding) NG IT NG 2. i k t ng (Dynamic binding) 3. Ch y ch ng trình VIRTUAL METHOD 4. Bài toán th c t & POLYMORPHISM 5. Ph ng th c o, a hình Tr n Ph c Tu n tuantp@hcmup.edu.vn 6. Ph ng th c h y b o http://giaotrinh.tranphuoctuan.com 7. Ph ng th c thu n o, l p tr u t ng 9/6/2009 TPTU N - LTH T 21. Static binding 2. Dynamic binding class Circle class Circle { int x,y,r; { int x,y,r; public: public: Circle (int xx, int yy, int rr) Circle (int xx, int yy, int rr) { x=xx; y=yy; r=rr; { x=xx; y=yy; r=rr; } } void print() void print() { cout 3. Ch y ch ng trình 3. Ch y ch ng trình Polymorphism ability occurs only when you use a pointer to an object and used-methods of classes are virtual methods virtual ReturnType Perhaps, you want or ReturnType virtual to see “Son” are accepted on the screen.9/6/2009 TPTU N - LTH T 5 9/6/2009 TPTU N - LTH T 64. Bài toán th c t 4. Bài toán th c t Gi ta c n qu n lý m t danh sách các i t ng có ki u có th khác nhau, ta c n gi i quy t hai v n Nguoi Cách l u tr Thao tác x lý Xét tr ng h p c th , các it ng là Ng i Sinh viên CongNhan SinhVien Công nhân9/6/2009 TPTU N - LTH T 7 9/6/2009 TPTU N - LTH T 8class Nguoi{ class SinhVien : public Nguoiprotected: { protected: char *HoTen; char *MaSo; int NamSinh; public:public: SinhVien(char *n, char *ms, int ns) : Nguoi(char *ht, int ns):NamSinh(ns) Nguoi(n,ns) { MaSo = strdup(ms);} {HoTen = strdup(ht);} ~SinhVien() {delete [] MaSo;} ~Nguoi() {delete [] HoTen;} void Xuat() const void Xuat() const { { cout void main() t qu xu t ra màn hình c a ch ng trình{ Nguoi *a[N]; Nguoi, Ho ten: Vien Van Sinh, Sinh Nam: 1982 a[0] = new SinhVien(Vien Van Sinh, ”200001234, 1982); Nguoi, Ho ten: Le Thi Ha Dong, Sinh Nam: 1984 a[1] = new SinhVien(Le Thi Ha Nguoi, Ho ten: Tran Nhan Cong, Sinh Nam: 1984 Dong,”200001235, 1984); Nguoi, Ho ten: Nguyen Thanh Nhan, Sinh Nam: 1960 a[2] = new CongNhan(Tran Nhan Cong, 1000000, 1984); tc i it ng u c quan m nh a[3] = new Nguoi(Nguyen Thanh Nhan, 1960); ng i vì thao tác c th c hi n thông qua con XuatDs(4,a); tr n l p Ng i.} 9/6/2009 ...

Tài liệu được xem nhiều: