实验七:项目二学生类

来源:互联网 发布:大数据用到哪些数据库 编辑:程序博客网 时间:2024/05/22 15:49

一、问题及代码

/* 文件名称:实验七.cpp* 作    者:吴涛涛* 完成日期:2017 年 5 月 21 日* 版 本 号:v1.0* 对任务及求解方法的描述部分:* 输入描述:无* 问题描述:         【项目2 - 学生类】* 算法设计:略*/    #include<iostream>    #include<string>    using namespace std;    class Stu   //声明基类    {    public:        Stu(int n, string nam ){           num=n;           name=nam;        };  //基类构造函数        void display( ){           cout<<"学号:"<<num<<endl;           cout<<"姓名:"<<name<<endl;        };          //成员函数,输出基类数据成员    protected:        //(*)访问权限为保护型的数据成员        int num;      //学生学号        string name;  //学生姓名    };    class StuDetail: public Stu              //声明派生类StuDetail    {    public:        //学生nam,学号n,a岁,家住ad,他的班长是nam1,学号n1        StuDetail(int n, string nam,int a, string ad,int n1, string nam1):Stu(n,nam),age(a),addr(ad),monitor(n1,nam1){}; //派生类构造函数        void show( ){            cout<<"学生信息:"<<endl;            display();            cout<<"年龄:"<<age<<endl;            cout<<"住址:"<<addr<<endl;            cout<<endl;        }; //成员函数,输出学生的信息        void show_monitor( ){            cout<<"班长信息:"<<endl;            monitor.display();        };    //成员函数,输出班长信息    private:        Stu monitor;   //学生所在班的班长,班长是学生,是Stu类的成员        int age;       //学生年龄        string addr;   //学生的住址    };    int main( )    {        //学生张三,10010号,19岁,家住江西南昌,他的班长是李四,学号10001        StuDetail s(10010,"张三",19,"江西南昌",10001,"李四");        s.show( );                       //输出学生信息        s.show_monitor();                //输出班长信息        return 0;    }

二、运行结果


三、心得体会

在继承中操作虽然会比之前更具难度,但是写出来的程序更加简洁明了,而且掌握了之后写起程序来省事很多。

尽管在初期,较难接受但是慢慢地多联系掌握后,自豪感油然而生。在这次编程中,遇到很多麻烦,查阅了许多

代码,和问了同学,但是最后成功时一切都是值得的。

四、知识点总结

派生类构造函数的语法格式:

派生类名::派生类名(总参数表):基类名(参数表),对象成员名(对象参数表)

{

     新增成员的初始化语句;

}

原创粉丝点击