Design Patterns-factory patterns
1. Abstract base class inheritance is used to construct the entire system based on the subordination between the abstract base class and the abstract base class to achieve a relatively clear class hierarchy.
2. Maintain scalability and minimum maintenance costs for the entire system.
Have I made it clear? Above code, ^ _ ^.
//////////////////////////////////////// ///////////////////////
Class Missile
{
Public:
Vitrual ~ Missiles ();
Protected:
Missiles ();
}
//------------------------------------------------------------
Class ground-to-air missile: Public Missile
{
Public:
Ground-to-air missile ();
~ Ground-to-air missile ();
}
Class anti-missile defense: Public missiles
{
Public:
Anti-missile defense ();
~ Anti-missile defense ();
}
//////////////////////////////////////// /////////////////////
Class chelaile
{
Public:
Vitrual ~ Chelaile ();
Protected:
Chelaile ();
}
//-------------------------------------------------
Class Korean Rolling Wheel: Public Rolling Wheel
{
Public:
Korean chelaile ();
~ Korean chelaile ();
}
Class Dongfeng wheel: public wheel
{
Public:
Dongfeng Motor rolling ();
~ Dongfeng Motor rolling ();
}
//////////////////////////////////////// /////////////////////////
Class tires
{
Public:
Vitrual ~ Tires ();
Protected:
Tires ();
}
//---------------------------------------------
Class meters Qilin: pubilc tires
{
Public:
Miqilin ();
~ Miqilin ();
}
Class Geely: pubilc tires
{
Public:
Geely ();
~ Geely ();
}
//////////////////////////////////////// //////////////////////////
Class car
{
Public:
Vitrual ~ Automobile ();
Virtual tire * tire () const {return new tire ;}
Virtual Rolling Wheel * Rolling Wheel () const {return New Rolling Wheel ;}
Virtual missile * missile () const {return new missile ;}
Protected:
Automobile ();
}
Class my car: Public Car
{
Public:
My car ();
~ My car ();
Virtual tire * tire () const {return New Geely ;}
Virtual Rolling Wheel * Rolling Wheel () const {return New Dongfeng Rolling Wheel ;}
Virtual missile * missile () const {return new ground-to-air missile ;}
}
Class wife's car: Public Car
{
Public:
Wife's car ();
~ Wife's car ();
Virtual tire * tire () const {return New miqilin ;}
Virtual Rolling Wheel * Rolling Wheel () const {return new Korean Rolling Wheel ;}
Virtual missile * missile () const {return new anti-missile defense ;}
}
Class stroller: Public Car
{
Public:
Stroller ();
~ Stroller ();
virtual tire * tire () const {return New Geely;}
virtual Rolling Wheel * Rolling Wheel () const {return New Dongfeng Rolling Wheel ;}
virtual missile * missile () const {return new anti-missile defense; }< BR >}