2008年上半年软件设计师下午试卷II[6]

软件设计师 责任编辑:baominlove 2008-09-18

添加老师微信

备考咨询

加我微信

摘要:【C++代码】classLight{//电灯类public:voidturnLight(intdegree){//调整灯光亮度,0表示关灯,100表示亮度最大};};classTV{//电视机类public:voidsetChannel(intchannel){//调整频道,0表示关机,1表示开机并切换到1频道};};classCommand{//抽象命令类public:virtualvoidon()=

【C++代码】

class Light{  //电灯类

public:

void turnLight(int degree){ //调整灯光亮度,0表示关灯,100表示亮度最大};

};

 

class TV{ //电视机类

public:

void setChannel(int channel){//调整频道,0表示关机,1表示开机并切换到1频道};

};

 

class Command{ //抽象命令类

public:

virtual void on()=0;

virtual void off()=0;

};

 

class RemoteController{  //遥控器类

protected:

Command *commands[4]; //遥控器有4个按钮,按照编号分别对应4个Command对象

public:

void onPressButton(int button){  //按钮被按下时执行命令对象中的命令

    if(button % 2 == 0)commands[button]->on();

    else commands[button]->off();

}

void setCommand(int button,Command * command){

    (1)  = command; //设置每个按钮对应的命令对象

}

};

 

class LightCommand : public Command{  //电灯命令类

protected:  Light *light;  //指向要控制的电灯对象

public:

void on(){light->turnLight(100);};

void off(){light->(2);};

LightCommand(Light * light){this->light = light;};

};

 

class TVCommand : public Command{ //电视机命令类

protected:  TV * tv;  //指向要控制的电视机对象

public:

void on(){tv->(3);};

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

软考备考资料免费领取

去领取

!
咨询在线老师!