⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 例11.6.txt

📁 是关于谭浩强老师的C++程序设计课程的程序源代码以及课件
💻 TXT
字号:
例11.6 包含子对象的派生类的构造函数。
为了简化程序以易于阅读,这里设基类Student的数据成员只有两个,即num和name。
#include <iostream>
#include <string>
using namespace std;
class Student//声明基类
 {public:                                  //公用部分
Student(int n, string nam )             //基类构造函数,与例11.5相同
    {num=n;
     name=nam;
    }
   void display( )                           //成员函数,输出基类数据成员
    {cout<<″num:″<<num<<endl<<″name:″<<name<<endl;}
protected:                                //保护部分
int num;
    string name;
};

class Student1: public Student              //声明公用派生类Student1
 {public:
   Student1(int n, string nam,int n1, string nam1,int a, string ad)
      :Student(n,nam),monitor(n1,nam1)                 //派生类构造函数
    {age=a;                         
     addr=ad;
    }
   void show( )
    {cout<<″This student is:″<<endl;
     display();                               //输出num和name
     cout<<″age: ″<<age<<endl;                //输出age
     cout<<″address: ″<<addr<<endl<<endl;     //输出addr
    }

       void show_monitor( )                        //成员函数,输出子对象
    {cout<<endl<<″Class monitor is:″<<endl;
     monitor.display( );                       //调用基类成员函数
  }
   private:                                   //派生类的私有数据
    Student monitor;                          //定义子对象(班长)
    int age;
    string addr;
  };

int main( )
{Student1 stud1(10010,″Wang-li″,10001,″Li-sun″,19,″115 Beijing Road,Shanghai″);
   stud1.show( );                       //输出学生的数据
   stud1.show_monitor();                //输出子对象的数据
return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -