【C++继承题目】商品类

Description

定义商品类(goods),成员包括商品号,商品名. 成员函数包括构造函数,包括两个参数分别对成员进行赋值,display()用于显示成员的值.
定义商品类的子类食品类(foods),成员包括商品号,商品名,保质期(天数days),重写display()函数显示其所有成员值.

主函数如下:
int main()
{
 int ID;
 string name;
 int days;

 cin>>ID>>name;

 class goods goods1(ID,name);
 goods1.display();
 cout<<endl;
 cin>>ID>>name>>days;
 class foods foods1(ID,name,days);
 foods1.display();
 cout<<endl;

    return 0;
}

Input

录入商品对象的商品号,商品名

录入食品类的商品号,商品名,保质期

Output

输出商品对象的信息

输出食品对象的信息

Sample Input

1 clothes
2 bread 10

Sample Output

goodsID=1 goodsName=clothes
goodsID=2 goodsName=bread days=10

题解

 1 #include<iostream>
 2 using namespace std;
 3 class goods
 4 {
 5     public:
 6         goods(int id,string na):ID(id),name(na){}
 7         void display();
 8     protected:
 9         int ID;
10         string name;        
11 };
12 class foods:public goods
13 {
14     public:
15         foods(int i,string n,int d):goods(i,n),days(d){}//在这调用基类的构造函数
16         void display();
17     private:
18         int days; 
19 };
20 int main()
21 {
22     int ID;
23     string name;
24     int days;
25     cin>>ID>>name;
26     class goods goods1(ID,name);
27     goods1.display();
28     cout<<endl;
29     cin>>ID>>name>>days;
30     class foods foods1(ID,name,days);
31     foods1.display();
32     cout<<endl;
33     return 0;
34 }
35 void goods::display() 
36 {
37     cout<<"goodsID="<<ID<<" "<<"goodsName="<<name<<endl; 
38 }
39 void foods::display() 
40 {
41     cout<<"foodsID="<<ID<<" "<<"goodsName="<<name<<" days="<<days<<endl; 
42 }    

 

posted @ 2022-06-11 21:44  杏花疏影  阅读(171)  评论(0)    收藏  举报