当前位置: 首页>>代码示例>>C++>>正文


C++ Facade::operate方法代码示例

本文整理汇总了C++中Facade::operate方法的典型用法代码示例。如果您正苦于以下问题:C++ Facade::operate方法的具体用法?C++ Facade::operate怎么用?C++ Facade::operate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Facade的用法示例。


在下文中一共展示了Facade::operate方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: main

int main(int argc, char *argv[])
{
	CSingleton *one = CSingleton::getInstance();	

	cout << "<<< Factory pattern >>>" << endl;
	Factory *fact = new DeriveFactory();
	Product *p1 = fact->createProduct();
	p1->display();

	AbstractFactory *abs1One = new Group1Factory();
	abs1One->createProductA();
	abs1One->createProductB();

	AbstractFactory *abs2One = new Group2Factory();
	abs2One->createProductA();
	abs2One->createProductB();

	Reciever *pRev = new Reciever();
	Command *pComm = new SubCommand(pRev);
	Invoke in(pComm);
	in.Action();

	Command *pComm2 = new SimpleCommand<Reciever>(pRev, &Reciever::Action);
	pComm2->act();
	cout << "<<< Facade pattern >>>" << endl;
	Facade *fa = new Facade();
	fa->operate();

	cout << "<<< Flyweight pattern >>>" << endl;
	FlyweightFactory *fwFactory = new FlyweightFactory();
	fwFactory->GetFlyweight("hello")->opt("world");
	fwFactory->GetFlyweight("haha")->opt("!!!");
	fwFactory->GetFlyweight("hello")->opt("world2");

	cout << "<<< Proxy pattern >>>" << endl;
	SubSubject *pSub = new SubSubject();
	Proxy *p2 = new Proxy(pSub);
	p2->request();

	cout << "<<< prototype pattern >>>" << endl;
	Prototype *prot = new SubPrototype();	
	Prototype *prot2 = prot->clone();

	cout << "<<< observer pattern >>>" << endl;
	OSubject *pOSub = new SubOSubject();
	ObserverA *pObA = new ObserverA();
	ObserverB *pObB = new ObserverB();
	pOSub->attach(pObA);
	pOSub->attach(pObB);
	pOSub->SetState("old");
	pOSub->notify();
	pOSub->SetState("new");
	pOSub->notify();
	
	cout << "<<< visitor pattern >>>" << endl;
	Visitor *pV = new SubVisitorA();
	Element *pE = new ElementA();
	pE->accept(pV);

	cout << "<<< state pattern >>>" << endl;
	State *pS = new StateA();
	Context *pSub3 = new Context(pS);
	pSub3->Operate();
	pSub3->Operate();
	pSub3->Operate();
	return 0;
}
开发者ID:imane-jym,项目名称:owner,代码行数:67,代码来源:run.cpp


注:本文中的Facade::operate方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。