随笔 - 299  文章 - 0  评论 - 0  阅读 - 6322 

今日完成了适配器模式的学习

#include <iostream>

using namespace std;

class Transportation
{
public:
virtual void drive(){}
};

class Car:public Transportation
{
public:
void drive()
{
cout<<"小轿车";
}
};

class Bus:public Transportation
{
public:
void drive()
{
cout<<"大巴";
}
};

class Road
{
public:
Transportation* transportation;

Road(Transportation* transportation)
{
this->transportation=transportation;
}
virtual void driveOnRoad(){}
};

class CementRoad:public Road
{
public:
CementRoad(Transportation* transportation):Road(transportation)
{

}

void driveOnRoad()
{
transportation->drive();
cout<<"行驶在水泥路"<<endl;
}
};

class BituminousRoad:public Road
{
public:
BituminousRoad(Transportation* transportation):Road(transportation)
{

}
void driveOnRoad()
{
transportation->drive();
cout<<"行驶在柏油路"<<endl;
}
};


int main()
{
Transportation* transportation;
Car car=Car();
transportation=&car;
CementRoad(transportation).driveOnRoad();
}

posted on   杨申龙  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
点击右上角即可分享
微信分享提示