外观模式:为子系统中的一组接口提供一个一致的界面, 外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
简单来说就是当系统非常复杂时,由我们来提供一个简单的接口供用户使用,让用户无需关注其中的实现。
class Keys
{
public:
void keyFront(){cout << "→";}
void keyBack(){cout << "←";}
void keyUp(){cout << "↑";}
void keyDown(){cout << "↓";}
void keyP(){cout << "p";}
};
class Skills
{
public:
void run()//波动拳-wing版拳皇的出招表
{
Keys key;
key.keyDown();
key.keyFront();
key.keyP();
}
};
一键波动拳(`・ω・´)
在之前的图片转文字的程序里,把图片变为文字的过程分为:
1.获取图片
2.缩放
3.将像素值灰度化后存入数组
4.根据灰度值转换为字符并显示
而我们提供的接口:(简略版)
void transformation()
{
getImage();//获取图片
scaled();//缩放
toRGBArray(image);//将像素值灰度化后存入数组
printText(RGBArray,image.width(),image.height());//根据灰度值转换为字符并显示
}
这样用户只用了解这一个接口就可以使用这个功能了;