-
说明
-
案例
-
书接上回
- 鞋贩子的卖鞋在当地有了名气,需要出席一些会议。
- 自己懒散惯了,穿着随意,也没有穿过正装,而参加会议的着装有要求。
- 必须西装革履加皮鞋。
-
案例
#include<iostream> #include<string> class HuiYiBiaoZhun { public: virtual std::string XingMing() = 0; virtual std::string XiZhuang() = 0 ; virtual std::string PiXie() = 0; }; void HuiYiRuChange(HuiYiBiaoZhun* can_hui_ren) { std::cout << "name:" << can_hui_ren->XingMing() << "," << "wear:" << can_hui_ren->XiZhuang() << "," << "shoes:" << can_hui_ren->PiXie() << "," << std::endl; } class XieFanZi { public: XieFanZi() { name_ = "fa wai kuang tu -- zhang san"; } std::string getName() { return name_; } private: std::string name_; }; class XieFanZiDeXiZhuang : public HuiYiBiaoZhun { public: XieFanZiDeXiZhuang(XieFanZi* xiefanzi):xiefanzi_(xiefanzi) { } std::string XingMing() { return xiefanzi_->getName(); } std::string XiZhuang() { return "xin xi zhuang"; } std::string PiXie() { return "xin pi xie"; } private: XieFanZi* xiefanzi_; }; int main() { XieFanZi xiefanzi; HuiYiBiaoZhun* xiefanzi_xi_zhuang_mo_shi = new XieFanZiDeXiZhuang(&xiefanzi); HuiYiRuChange(xiefanzi_xi_zhuang_mo_shi); }- 鞋贩子切换成西装模式
(换了西装)就可以参加会议了。 - 即变装秀。
- 鞋贩子切换成西装模式
-
-
总结
C++ 07 适配器模式
最新推荐文章于 2025-12-11 21:09:37 发布
适配器模式通过包装使不同类能够协同工作,无需修改原有代码,增强了系统的灵活性。案例中,鞋贩子通过变装(西装模式)满足会议着装要求,展示了如何用聚合实现类的适配。这种模式允许对象在不改变自身的情况下适应不同的接口,但过度使用可能导致类的膨胀。
1712

被折叠的 条评论
为什么被折叠?



