Esempio n. 1
0
void main()
{
	IReceiver* reciever = new IReceiver(2);
	IncrementCommand* increCmd = new IncrementCommand(reciever);
	DecrementCommand* decreCmd = new DecrementCommand(reciever);
	SquareCommand* squreCmd = new SquareCommand(reciever);
	SqrtCommand* sqrtCmd = new SqrtCommand(reciever);
	Invoker* invoker = new Invoker();
	invoker->addCmd(increCmd);
	invoker->addCmd(decreCmd);
	invoker->addCmd(squreCmd);
	invoker->addCmd(sqrtCmd);
	invoker->notify();
	invoker->undo();
	delete increCmd;
	delete decreCmd;
	delete squreCmd;
	delete sqrtCmd;
	delete invoker;
	delete reciever;
}