【c++】继承学习(二):探索 C++ 中派生类的默认机制与静态成员共享

慈云数据 6个月前 (05-14) 技术支持 36 0

Alt

🔥个人主页:Quitecoder

🔥专栏:c++笔记仓

Alt

目录

  • `1.派生类的默认成员函数`
  • `2.继承与友元`
  • `3.继承与静态成员`

    朋友们大家,本篇文章我们来学习继承的第二部分

    1.派生类的默认成员函数

    在这里插入图片描述

    来看下面的类:

    class Person
    {
    public:
    	Person(const char* NAME = "jason")
    		: _name(name)
    	{
    		cout 
    		cout 
    		cout 
    		cout 
    public:
    protected:
    	int _num; //学号
    };
    
    	cout 
    	cout 
    	cout 
       cout 
    	cout 
    		Person::operator =(s);
    		_num = s._num;
    	}
    	return *this;
    }
    
    	cout 
    public:
    	~Person()
    	{
    		cout 
    public:
    	~Student()
    	{
    		cout 
    	Person p1;
    	Student s1;
    	return 0;
    } 
    
    	Person::~Person();
    	cout 
    public:
    	friend void Display(const Person& p, const Student& s);
    protected:
    	string _name; // 姓名
    };
    class Student : public Person
    {
    protected:
    	int _stuNum; // 学号
    };
    void Display(const Person& p, const Student& s)
    {
    	cout 
    public:
        friend void Display(const Person& p, const Student& s);
    protected:
        int _stuNum; // 学号
    };
    
    public:
    	Person() { ++_count; }
    protected:
    	string _name; // 姓名
    public:
    	static int _count; // 统计人的个数。
    };
    int Person::_count = 0;
    class Student : public Person
    {
    protected:
    	int _stuNum; // 学号
    };
    class Graduate : public Student
    {
    protected:
    	string _seminarCourse; // 研究科目
    };
    void testPerson()
    {
    	Student s1;
    	Student s2;
    	Student s3;
    	Graduate s4;
    	cout 
        Student s1; // 在构造时, Person::_count 变为 1
        Student s2; // Person::_count 变为 2
        Student s3; // Person::_count 变为 3
        Graduate s4; // Person::_count 变为 4
        cout 
微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon