c++中多重继承

来源:互联网 发布:mysql 1064 syntax 编辑:程序博客网 时间:2024/06/05 16:24
// multiple inheritance#include <iostream>using namespace std;class Polygon {  protected:    int width, height;  public:    Polygon (int a, int b) : width(a), height(b) {}};class Output {  public:    static void print (int i);};void Output::print (int i) {  cout << i << '\n';}class Rectangle: public Polygon, public Output {  public:    Rectangle (int a, int b) : Polygon(a,b) {}    int area ()      { return width*height; }};class Triangle: public Polygon, public Output {  public:    Triangle (int a, int b) : Polygon(a,b) {}    int area ()      { return width*height/2; }};int main () {  Rectangle rect (4,5);  Triangle trgl (4,5);  rect.print (rect.area());  Triangle::print (trgl.area());  return 0;}
原创粉丝点击