标签:设计模式 c++
class Person { public: virtual void CreateHead() = 0; virtual void CreateHand() = 0; virtual void CreateBody() = 0; virtual void CreateFoot() = 0; }; class ThinPerson: public Person { public: virtual void CreateHead() { cout << "Create Thin Head" << endl; } virtual void CreateHand() { cout << "Create Thin Hand" << endl; } virtual void CreateBody() { cout << "Create Thin Body" << endl; } virtual void CreateFoot() { cout << "Create Thin Foot" << endl; } }; class ThickPerson: public Person { public: virtual void CreateHead() { cout << "Create Thick Head" << endl; } virtual void CreateHand() { cout << "Create Thick Hand" << endl; } virtual void CreateBody() { cout << "Create Thick Body" << endl; } virtual void CreateFoot() { cout << "Create Thick Foot" << endl; } }; //指挥者类 class Direct { private: Person * p; public: Direct(Person * temp){p = temp;} void Create() { p->CreateHead(); p->CreateHand(); p->CreateBody(); p->CreateFoot(); } }; int _tmain(int argc, char argv[]) { Person * p = new ThickPerson(); Direct * d = new Direct(p); d->Create(); delete p; delete d; return 0; }
标签:设计模式 c++
原文地址:http://blog.csdn.net/lightupheaven/article/details/38842787