51. 6-85.文具盒*,文具盒里有铅笔、尺和橡皮擦。在下面的程序里,定义了铅笔类 PENCIL、尺类 RULER、橡皮擦类 ERASER 和文具盒类 BOX。请完成这四个类的成员函数的设计。

#include  <iostream>
#include  <string>
using  namespace  std;
/*输入样例
5 15 3
输出样例
创建铅笔(型号: 5)
创建尺(长度: 15)
创建橡皮擦(颜色: 3)
创建文具盒
铅笔(型号: 5)
尺(长度: 15)
橡皮擦(颜色: 3)
销毁文具盒
销毁橡皮擦(颜色: 3)
销毁尺(长度: 15)
销毁铅笔(型号: 5)*/ 
class  PENCIL
{
public:
        PENCIL(int  model);
        ~PENCIL();
        void  Show()  const;
private:
        int  model;
};

class  RULER
{
public:
        RULER(int  length);
        ~RULER();
        void  Show()  const;
private:
        int  length;
};

class  ERASER
{
public:
        ERASER(int  color);
        ~ERASER();
        void  Show()  const;
private:
        int  color;
};

class  BOX
{
public:
        BOX(int  pencil,  int  ruler,  int  eraser);
        ~BOX();
        void  Show()  const;
private:
        PENCIL  pencil;
        RULER  ruler;
        ERASER  eraser;
};

/*  你提交的代码将被嵌在这里  */
PENCIL::PENCIL(int  model){
	this->model=model;
	cout<<"创建铅笔(型号: "<<model<<")"<<endl;
}
PENCIL::~PENCIL(){
	cout<<"销毁铅笔(型号: "<<model<<")"<<endl;
}
void PENCIL::Show() const{
	cout<<"铅笔(型号: "<<model<<")"<<endl;
}
RULER::RULER(int  length){
	this->length=length;
	cout<<"创建尺(长度: "<<length<<")"<<endl;
}
RULER::~RULER(){
	cout<<"销毁尺(长度: "<<length<<")"<<endl;
}
void RULER::Show() const{
	cout<<"尺(长度: "<<length<<")"<<endl;
}
ERASER::ERASER(int  color){
	this->color=color;
	cout<<"创建橡皮擦(颜色: "<<color<<")"<<endl;
}
ERASER::~ERASER(){
	cout<<"销毁橡皮擦(颜色: "<<color<<")"<<endl;
}
void ERASER::Show() const{
	cout<<"橡皮擦(颜色: "<<color<<")"<<endl;
}
BOX::BOX(int  pencil,  int  ruler,  int  eraser):pencil(pencil),ruler(ruler),eraser(eraser){
	cout<<"创建文具盒"<<endl;
}
BOX::~BOX(){
	cout<<"销毁文具盒"<<endl;
}
void BOX::Show() const{
	pencil.Show();
	ruler.Show();
	eraser.Show();
}
int  main()
{
        int  p,  r,  e;
        cin  >>  p  >>  r  >>  e;
        BOX  x(p,  r,  e);
        x.Show();
        return  0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值