設計模式--建立型模式--抽象工廠
//Creational Patterns--abstract factory //建立型模式--抽象工廠
//----------------------------------------------------------------- class Tank { public: virtual void message() = 0; };
class Tank80 : public Tank { public: void message(){cout << "Tank80"<< endl;} };
class Tank99 : public Tank { void message(){cout << "Tank99" << endl;} };
//----------------------------------------------------------------- class plane { public: virtual void message() = 0; };
class plane80 : public plane { public: void message(){cout << "Plane80" << endl;} };
class plane99 : public plane { public: void message(){cout << "Plance99" << endl;} };
//----------------------------------------------------------------- class Factory { public: virtual Tank* createTank() = 0; virtual plane* createPlane() = 0; };
class Factory80 : public Factory { public:
Tank* createTank(){return new Tank80();} plane* createPlane(){return new plane80();} }; class Factory99 : public Factory { public: Tank* createTank(){return new Tank99();} plane* createPlane(){return new plane99();} };