add AdapterPattern
parent
72d156e4c0
commit
bb9400b945
Binary file not shown.
After Width: | Height: | Size: 9.7 KiB |
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
|
@ -0,0 +1,56 @@
|
||||||
|
#ifndef __SINGLETON_H__
|
||||||
|
#define __SINGLETON_H__
|
||||||
|
|
||||||
|
#include <iostream>
|
||||||
|
#include <string.h>
|
||||||
|
#include <mutex>
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
//目标抽象类
|
||||||
|
class Controller
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Controller(){}
|
||||||
|
virtual void pathPlanning() = 0;
|
||||||
|
private:
|
||||||
|
};
|
||||||
|
|
||||||
|
//适配者类DxfParser
|
||||||
|
class DxfParser
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
DxfParser(){}
|
||||||
|
void parseFile(){
|
||||||
|
printf("解析文件提取数据\n");
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
//适配者类PathPlanner
|
||||||
|
class PathPlanner
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
PathPlanner(){}
|
||||||
|
void calculate(){
|
||||||
|
printf("计算加工路径\n");
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
//适配器类Adapter
|
||||||
|
class Adapter:public Controller
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
Adapter(){
|
||||||
|
dxfParser = new DxfParser();
|
||||||
|
pathPlanner = new PathPlanner();
|
||||||
|
}
|
||||||
|
void pathPlanning(){
|
||||||
|
printf("路径规划:\n");
|
||||||
|
dxfParser->parseFile();
|
||||||
|
pathPlanner->calculate();
|
||||||
|
}
|
||||||
|
private:
|
||||||
|
DxfParser *dxfParser;
|
||||||
|
PathPlanner *pathPlanner;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif //__SINGLETON_H__
|
|
@ -0,0 +1,11 @@
|
||||||
|
#include <iostream>
|
||||||
|
#include "AdapterPattern.h"
|
||||||
|
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
Controller *controller = new Adapter();
|
||||||
|
controller->pathPlanning();
|
||||||
|
|
||||||
|
system("pause");
|
||||||
|
return 0;
|
||||||
|
}
|
Loading…
Reference in New Issue