关闭

设计模式读书笔记:Facade(外观)

标签: 设计模式读书笔记Facade外观
261人阅读 评论(0) 收藏 举报
分类:

意图:

为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

结构图:来自 《23种设计模式 - 郗晓勇》


实现:https://github.com/panshiqu/patterns/tree/master/Facade

Facade

#include "Input.h"
#include "Output.h"

namespace NS_FACADE {

class Facade {
public:
	Facade() {}
	virtual ~Facade() {}
	void inputAndOutput(void)
	{
		Input in;
		Output out;
		out.outputStr(in.inputStr());
	}
};

} /* namespace NS_FACADE */
Input

#include <iostream>

namespace NS_FACADE {

class Input {
public:
	Input() {}
	virtual ~Input() {}
	std::string inputStr(void)
	{
		std::string str;
		std::cin >> str;
		return str;
	}
};

} /* namespace NS_FACADE */
Output

#include <iostream>

namespace NS_FACADE {

class Output {
public:
	Output() {}
	virtual ~Output() {}
	void outputStr(std::string str)
	{
		std::cout << str << std::endl;
	}
};

} /* namespace NS_FACADE */
main

#include "Facade/Facade.h"
using namespace NS_FACADE;
int main(void)
{
	Facade facade;
	facade.inputAndOutput();
}
附加:

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:79270次
    • 积分:1289
    • 等级:
    • 排名:千里之外
    • 原创:66篇
    • 转载:0篇
    • 译文:0篇
    • 评论:38条
    文章分类
    最新评论