一、课堂要点
二、使用示例
#include <iostream>
using namespace std;
class Shape
{
public:
virtual double area() = 0;
};
class Rectangle : public Shape
{
double a;
double b;
public:
Rectangle(double a, double b)
{
this->a = a;
this->b = b;
}
virtual double area()
{
return a * b;
}
};
class Circle: public Shape
{
double r;
public:
Circle(double r)
{
this->r = r;
}
virtual double area()
{
return 3.14 * r * r;
}
};
void area(Shape *p)
{
cout<<"area: "<<p->area()<<endl;
}
int main()
{
Rectangle rectangle(1,2);
Circle circle(3);
area(&rectangle);
area(&circle);
return 0;
}