设计模式之外观模式(Facade)

外观模式原理:将复杂的子系统的结构封装起来,只提供客户一个简单的接口

代码如下:

#include <iostream>
#include <string>
#include <list>
using namespace std;


/************************************************************************/
/* 装饰模式的作用是为对象增加属性										*/
/************************************************************************/

class Scanner
{
public:
	void Scan(){cout << "词法分析" << endl;}
};

class Parser
{
public:
	void Parse(){cout << "语法分析" <<endl;}
};
class GenMidCode
{
public:
	void GenCode(){cout << "产生中间代码" <<endl;}
};
class GenMachineCode
{
public:
	void GenCode(){cout<<"产生机器码"<<endl;}
};

class Compiler
{
public:
	void Run()
	{
		Scanner scanner;
		Parser parser;
		GenMidCode genMidCode;
		GenMachineCode genMacCode;
		scanner.Scan();
		parser.Parse();
		genMidCode.GenCode();
		genMacCode.GenCode();
	}
};
int main()
{
	Compiler compiler;
	compiler.Run();
	return 0;
}
原文地址:https://www.cnblogs.com/liuweilinlin/p/3204822.html