#includeusing namespace std; class shape { public: virtual double area() = 0; }; class Circle :public shape { public: Circle(float rr) :r(rr) {} virtual double area() { return 3.14 * r * r; } private: float r; }; class Rectangle :public shape { public: Rectangle(float aa, float bb) :a(aa), b(bb) {} virtual double area() { return a * b; } private: float a, b; }; class Trangle :public shape { public: Trangle(float dd, float gg) :d(dd), g(gg) {} virtual double area() { return d * g*0.5; } private: float d, g; }; void printArea(shape &s) { cout << "所得的面积为"< 纯虚函数。
virtual double area() = 0;表明这个返回值为0,没有什么含义,将所有的纯虚函数放在一起就是抽象类。



