GIÁO TRÌNH C++ - Trang 109

CPolygon * ppoly2 = &trgl;

ppoly1->set_values (4,5);

ppoly2->set_values (4,5);

cout << ppoly1->area() << endl;

cout << ppoly2->area() << endl;

return 0;

}

20

10

Nếu bạn xem lại chương trình bạn sẽ thấy rằng chúng ta tham chiếu đến các đối
tượng thuộc các lớp khác nhau nhưng chỉ sử dụng một kiểu con trỏ duy nhất.
Điều này là cực kì hữu dụng, bây giờ chúng ta có thể tạo một hàm thành viên
của

CPolygon

có khả năng in ra màn hình kết quả của hàm

area()

mà không

phụ thuộc vào lớp được thừa kế là lớp nào.

// ejemplo miembros virtuales

#include <iostream.h>

class CPolygon {

protected:

int width, height;

public:

void set_values (int a, int b)

{ width=a; height=b; }

virtual int area (void) =0;

void printarea (void)

{ cout << this->area() << endl; }

};

class CRectangle: public CPolygon {

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.