?? command.h
字號(hào):
//Command.h
#ifndef _COMMAND_H_
#define _COMMAND_H_
class Reciever;
class Command
{
public:
virtual ~Command();
virtual void Excute() = 0;
protected:
Command();
private:
};
class ConcreteCommand:public Command
{
public:
ConcreteCommand(Reciever* rev);
~ConcreteCommand();
void Excute();
protected:
private:
Reciever* _rev;
};
//下面是通過(guò)模板的方式來(lái)參數(shù)化請(qǐng)求的接收者
template <class Reciever> class SimpleCommand:public Command
{
public:
typedef void (Reciever::* Action)();
SimpleCommand(Reciever* rev,Action act)
{
_rev = rev;
_act = act;
}
virtual void Excute()
{
(_rev->* _act)();
}
~SimpleCommand()
{
delete _rev;
}
protected:
private:
Reciever* _rev;
Action _act;
};
#endif //~_COMMAND_H_
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -