資源簡(jiǎn)介
命令行模式的C++實(shí)現(xiàn)
編譯環(huán)境VS2010
命令模式解析:http://blog.csdn.net/zs634134578/article/details/21031509

代碼片段和文件信息
#include?“command.h“
/*
?*?Phone類的成員函數(shù)實(shí)現(xiàn)
*/
void?Phone::setCommand(?Command*?command)?{
this->_command?=?command;
}
void?Phone::runCommand()?{
this->_command->execute();
}
/*
?*?命令實(shí)際執(zhí)行者,包括CPU,聲卡
*/
Processor::Processor(){?}
void?Processor::unlockScreen()?{
std::cout?<“解鎖屏幕“?<}
void?Processor::startApp()?{
std::cout?<“啟動(dòng)應(yīng)用程序...“?< std::cout?<“啟動(dòng)應(yīng)用程序成功“?<}
void?Processor::lockScreen()?{
std::cout?<“鎖定屏幕?...?OK“?<}
SoundCard::SoundCard()?{?}
void?SoundCard::decreaseSound()
{
std::cout?<“調(diào)低音量?...?OK“?<}
void?SoundCard::incraseSound()
{
std::cout?<“提高音量?...?OK“?<}
/*
?*?命令子類,執(zhí)行具體的命令
*/
LockScreenCommand::LockScreenCommand(Processor*?processor)?{
this->_processor?=?processor;
}
void?LockScreenCommand::execute()?{
this->_processor->lockScreen();
}
UnlockScreenCommand::UnlockScreenCommand(Processor*?processor)?{
this->_processor?=?processor;
}
void?UnlockScreenCommand::execute()?{
this->_processor->unlockScreen();
}
StartAppCommand::StartAppCommand(Processor*?processor)?{
this->_processor?=?processor;
}
void?StartAppCommand::execute?()?{
this->_processor->startApp();
}
IncSoundCmd::IncSoundCmd(SoundCard*?soundcard)?{
this->soundcard?=?soundcard;
}
void?IncSoundCmd::execute()?{
this->soundcard->incraseSound();
}
DecSoundCmd::DecSoundCmd(SoundCard*?soundcard)?{
this->soundcard?=?soundcard;
}
void?DecSoundCmd::execute()?{
this->soundcard->decreaseSound();
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????1718??2014-03-11?19:00??command.cpp
?????文件????????1538??2014-03-11?19:00??command.h
?????文件?????????191??2014-03-11?19:01??main.cpp
?????文件????????1481??2014-03-11?19:00??user.cpp
?????文件?????????265??2014-03-11?18:44??user.h
評(píng)論
共有 條評(píng)論