设计模式
设计原则一:开闭原则
设计原则二:迪米特法则
设计原则三:合成复用原则
设计原则四:依赖倒转原则
设计模式一:简单工程模式
自上而下的软件开发流程
UML类图
UML图六种箭头的含义(泛化、实现、依赖、关联、聚合、组合)
C++11的新变化
未命名
本文档使用 MrDoc 发布
-
+
首页
设计原则三:合成复用原则
合成复用原则:继承和组合优先使用组合 ```cpp #include <iostream> using namespace std; //继承和组合,优先使用组合 //抽象车 class AbstractCar{ public: virtual void run() = 0; }; //大众车 class Dazhong : public AbstractCar{ public: virtual void run(){ cout << "大众启动..." << endl; } }; //拖拉机 class Tuolaji : public AbstractCar{ public: virtual void run(){ cout << "拖拉机启动..." << endl; } }; //针对具体类,不适用继承 #if 0 class Person : public Tuolaji{ public: void Doufeng(){ run() } }; class PersonB : public Dazhong{ public: void Doufeng(){ run(); } }; #endif //使用组合 class Person{ public: void setCar(AbstractCar *car){ this->mCar = car; } void Doufeng(){ this->mCar->run(); } private: AbstractCar *mCar; }; void test01(){ Person *p = new Person; AbstractCar* car = new Dazhong; p->setCar(car); p->Doufeng(); delete car; car = new Tuolaji; p->setCar(car); p->Doufeng(); delete car; delete p; } int main(void){ test01(); return 0; } ```
admin
2024年3月19日 10:40
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码