
一道C++问题
#include<iostream>usingnamespacestd;classSwitchable{//具有开、关两种状态的设备boolis_on;//为ture表示...
#include<iostream>
using namespace std;
class Switchable{//具有开、关两种状态的设备
bool is_on;//为ture 表示“开”,为false 表示“关”
public:
Switchable(): is_on(false){}
void switchOn(){ is_on=true; }//置为“开”状态
void switchOff(){ is_on=false; }//置为“关”状态
//**********found**********
bool isOn(){ _______________ }//返回设备状态
//**********found**********
virtual const char *getDeviceName()_______; //返回设备名称的纯虚函数
};
class Lamp: public Switchable{
public:
//返回设备名称,用于覆盖基类中的纯虚函数
const char *getDeviceName(){ return "Lamp"; }
};
class Button{//按钮
Switchable *device;//按钮控制的设备
public:
//**********found**********
Button(Switchable &dev):____________{}//用参数变量的地址初始化device
bool isOn(){ return device->isOn(); }//按钮状态
void push(){//按一下按钮改变状态
//**********found**********
if(isOn()) device->switchOff();
else device->switchOn();
}
};
int main(){
Lamp lamp;
Button button(lamp);
cout<<"灯的状态:"<<(lamp.isOn()? "开" : "关")<<endl;
cout<<"按钮的状态:"<<(button.isOn()? "开" : "关")<<endl;
button.push(); //按一下按钮
cout<<"灯的状态:"<<(lamp.isOn()? "开" : "关")<<endl;
cout<<"按钮的状态:"<<(button.isOn()? "开" : "关")<<endl;
return 0;
}
老师布置的作业。。 不知道纯虚函数怎么写。 还有就是isOn那里, 主程序里面跟了"开" : "关" 就不知道里面写什么了 展开
using namespace std;
class Switchable{//具有开、关两种状态的设备
bool is_on;//为ture 表示“开”,为false 表示“关”
public:
Switchable(): is_on(false){}
void switchOn(){ is_on=true; }//置为“开”状态
void switchOff(){ is_on=false; }//置为“关”状态
//**********found**********
bool isOn(){ _______________ }//返回设备状态
//**********found**********
virtual const char *getDeviceName()_______; //返回设备名称的纯虚函数
};
class Lamp: public Switchable{
public:
//返回设备名称,用于覆盖基类中的纯虚函数
const char *getDeviceName(){ return "Lamp"; }
};
class Button{//按钮
Switchable *device;//按钮控制的设备
public:
//**********found**********
Button(Switchable &dev):____________{}//用参数变量的地址初始化device
bool isOn(){ return device->isOn(); }//按钮状态
void push(){//按一下按钮改变状态
//**********found**********
if(isOn()) device->switchOff();
else device->switchOn();
}
};
int main(){
Lamp lamp;
Button button(lamp);
cout<<"灯的状态:"<<(lamp.isOn()? "开" : "关")<<endl;
cout<<"按钮的状态:"<<(button.isOn()? "开" : "关")<<endl;
button.push(); //按一下按钮
cout<<"灯的状态:"<<(lamp.isOn()? "开" : "关")<<endl;
cout<<"按钮的状态:"<<(button.isOn()? "开" : "关")<<endl;
return 0;
}
老师布置的作业。。 不知道纯虚函数怎么写。 还有就是isOn那里, 主程序里面跟了"开" : "关" 就不知道里面写什么了 展开
2个回答
展开全部
/**********found**********
bool isOn(){ _______________ }//返回设备状态 <--这里填: return is_on;
//**********found**********
virtual const char *getDeviceName()_______; //返回设备名称的纯虚函数 <--这里填:=0
//**********found**********
Button(Switchable &dev):____________{}//用参数变量的地址初始化device <--这里填:device(&dev)
bool isOn(){ _______________ }//返回设备状态 <--这里填: return is_on;
//**********found**********
virtual const char *getDeviceName()_______; //返回设备名称的纯虚函数 <--这里填:=0
//**********found**********
Button(Switchable &dev):____________{}//用参数变量的地址初始化device <--这里填:device(&dev)

2024-08-28 广告
在当今竞争激烈的商业环境中,企业需要不断提高自身的竞争力,以保持市场份额和增加利润。通过人效提升,企业可以更有效地利用有限的资源,提高生产力和效益,从而实现盈利目标。中智咨询提供全方位的组织人效评价与诊断、人效提升方案等数据和管理咨询服务。...
点击进入详情页
本回答由中智咨询提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询