1. Trang chủ
  2. » Hoá học lớp 11

Lập trình hướng đối tượng: Thừa kế

7 5 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Nội dung

[r]

(1)

TH A K

TH A K

(INHERITANCE)

(INHERITANCE)

(2)

N i dung

N i dung

Khái ni m

L p d n xu t đ n gi n

ấ ơ

Ký hi u th b c

ứ ậ

Hàm xây d ng hàm h y

Thành viên l p đ

ượ

c b o v

L p c s riêng, chung đ

ơ ở

ượ

c b o v

Đa th a k - S m h

ế

ự ồ

Hàm o - L p c s o

ơ ả

Chuy n ki u

(3)

Khái ni m

Khái ni m

K th a t l p có t tr

ế ừ

ừ ướ

c.

Ích l i:

có th t n d ng l i

ể ậ

Các thu c tính chung

Các hàm có thao tác t

ươ

ng t

L P CHA

L P CHA

(Super class)

L P CON

L P CON

L p c s

ơ ở

(Base class)

L p d n xu t

STUDENT

STUDENT

CIT_STUDENT

(4)

Ví d minh h a

Ví d minh h a

#include <iostream.h> #include <string.h> class ContactContact{ private:

char *name; // ten doi tac char *address; // dia chi doi tac char *tel; // so dien thoai public:

Contact (const char *name,

const char *address, const char *tel); ~Contact ();

const char* Name () const { return name;} const char* Address() const { return address;} const char* Tel() const { return tel;}

friend ostream& operator <<

( ostream&, Contact& );

class ContactDirContactDir { private:

int Lookup(const char *name);

Contact **contacts; // ds cac doi tac int dirSize; // kich thuoc thu muc hien tai int maxSize; // kich thuoc thu muc toi da public:

ContactDir (const int maxSize); ~ContactDir();

void Insert(const Contact&); void Delete(const char *name); Contact* Find(const char *name); friend ostream& operator <<

(ostream&, ContactDir&); // …………

ContactDir

ContactDir

n

Contact

Contact

Ký hi u

(5)

Ví d minh h a (tt)

Ví d minh h a (tt)

class SmartDirSmartDir : public ContactDir { private:

char *recent; // ten duoc tim gan nhat public:

SmartDir(const int max) : ContactDir(max) { recent = 0; }

Contact* Recent (void);

Contact* Find (const char *name); // ………

Contact* SmartDir::Recent (void) { return recent == ? :

ContactDir::Find(recent); }

Contact* SmartDir::Find (const char *name) { Contact *c = ContactDir::Find(name); if (c != 0)

recent = (char*) c->Name(); return c;

Ký hi u

Th a k

ế

ContactDir

ContactDir

n

Contact

Contact

SmartDir

(6)

Container

Container

Container

Container

(L p v t ch a):

Container gì?

T i l i c n Container.

ạ ầ

Container C++.

(7)

CÂU H I?

Ngày đăng: 10/03/2021, 14:37

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w