Con trỏ tới lớp cơ sở
Một trong những lợi thế lớn của việc thừa kế các lớp làmột con trỏ trỏ tới một
lớp được thừa kế là tương thích về kiểu với một con trỏ trỏ tới lớp cơ sở
của nó. Bài này sẽ đề cập đầy đủ đến việc tận dụng tính năng mạnh mẽ này của
C++. Ví dụ, chúng ta sẽ viết lại chương trình của chúng ta về hình chữ nhật và
hình tam giác trong chương trước để xem xét tính năng này:
// con trỏ tới lớp cơ sở
#include <iostream.h>
class CPolygon {
protected:
int width, height;
public:
void set_values (int a, int b)
{ width=a; height=b; }
};
class CRectangle: public CPolygon {
public:
int area (void)
{ return (width * height); }
};
class CTriangle: public CPolygon {
public:
int area (void)
{ return (width * height / 2); }
};
int main () {
CRectangle rect;