bool isUnlocked()const{return!locked;}
//门未锁时返回true,否则返回false
void open(){ //开门
cout<
//ERROR***********found***********
if(closed)
cout<<”门是开着的,无须再开门。”;
else if(10cked)
cout<<”门是锁着的,打不开。”;
else{
closed=false;
eout<<”门打开了。”;
}
}
void close(){//关门
cout<
if(closed)
cout<<”门是关着的,无须再关门。”;
else{
closed=true;
cout<<”门关上了.";
}
}
//ERROR************found************
void lock()const{//锁门
cout<
if(locked)
cout<<”门是锁着的,无须再锁门。”;
else{
if(!closed){
cout<<”先关门...”;
closed=true;
}
locked=true:
cout<<”门锁上了。”;
}
}
wild unlock(){//开锁
cout<
if(!locked)
cout<<”门没有上锁,无须再开锁。”;
else{
locked=false;
cout<<”锁开了。”;
}
};
int main(){
Door door(503);
door.open();
door.unlock();
door.open();
door.open();
floor.10ck();
return 0;
}
参考解析:
(1)this—>num=num;
(2)if(!closed)
(3)void lock(){
三、简单应用题
42请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件 main.cpp,其中有类CPolygon(“多边形”)、CRectangle(“矩形”)、CTriangle(“三角形”)的定义。请在横线处填写适当的代码并删除横线,以实现上述类定义。该程序的正确输出结果应为: 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。 #include
{tout<<——<
int area(void){return(width *height);}
class CTriangle:public CPolygon{
int length;//三角形一边长 int height;//该边上的高
public:
CTriangle(int l,int h):length(1),height(h){}
//*********found*********
int area(void){return(——)/2;}
};
int main(){
CRectangle rect(4,5); CTriangle trgl(4,5);
//*********found********* ______ *ppolyl,* ppoly2; ppolyl=▭
ppoly2=&trgl;
ppolyl->printarea(); ppoly2->printarea(); retun 0;
参考解析:
(1)virtual int area(void)=0;
(2)area()
(3)length*height
(4)CPolygon