设计模式观后(c++还原之二 依赖的信用)
2014-09-04 15:23
239 查看
依赖的信用
//言而无信,高低层依赖模块 class ICar { public: virtual void run() { cout << "car run!"; } }; class Benz : public ICar { public: virtual void run() { cout << "benz run"; } }; class BMW : public ICar { public: virtual void run() { cout << "bmw run"; } }; //司机, 并非所有司机能开车,为了避免这种言而无信的情况 //专门写个类,用于继承。如此他们的依赖是可信的 class IDriver { public: virtual void drive(ICar* car); }; class Driver : public IDriver { public: virtual void drive(ICar* car) { //为了添加依赖,做run car->run(); cout << "driver car"; } }; class Client { public: void dmain() { IDriver* wang = new Driver; ICar* benz = new Benz; wang->drive(benz); } };
相关文章推荐
- 设计模式观后(c++还原之八 建造者模式)
- 设计模式观后(c++还原之二十三 状态模式)
- 设计模式观后(c++还原之二十五 享元模式)
- 设计模式观后(c++还原之二十 门面模式)
- 设计模式观后(c++还原之九 代理模式)
- 设计模式观后(c++还原之十四 修饰模式)
- 设计模式观后(c++还原之三 接口隔离)
- 设计模式观后(c++还原之四 开闭原则 )
- 设计模式观后(c++还原之十六 适配器模式)
- 设计模式观后(c++还原之十一 中介者模式)
- 设计模式观后(c++还原之十七 迭代器模式)
- 设计模式观后(c++还原之二十一 备忘录模式)
- 设计模式观后(c++还原之二十六 桥梁模式)
- 设计模式观后(c++还原之二十二 访问者模式)
- 设计模式观后(c++还原之十二 命令模式)
- 设计模式观后(c++还原之六 工厂模式)
- 设计模式观后(c++还原之十 代理模式)
- 设计模式C++学习笔记之二(Proxy代理模式)
- 常见设计模式的解析和实现(C++)之二-Abstract Factory模式
- 设计模式观后(c++还原之七 模板方法模式)