zoukankan      html  css  js  c++  java
  • 类的继承(2)

    /*类的继承(2)*/

    #include "stdafx.h"
    #include <string.h>
    #include <iostream.h>

    class MyDate
    {
    public:
        MyDate()
        {
            cout << "
    成员构造" << endl;
        }
        ~MyDate()
        {
            cout << "
    成员构造" << endl;
        }
    };

    class Employee
    {
    protected:
        char *m_pName;
    private:
        short m_nAge;
        float m_fSalary;
    public:
        Employee() 
        {
            m_pName= NULL; 
            m_nAge = 0;
            m_fSalary = 0.0;
            cout << "
    基类构造" << endl;
        }
        Employee(char *pName, short nAge, float fSalary)
        {
            m_pName = new char[strlen(pName)+1];
            strcpy(m_pName,pName);
            m_nAge = nAge;
            m_fSalary = fSalary;
            cout << "
    基类构造(3参数)" << endl;
        }
        ~Employee()
        {
            if ( m_pName )
            {
                delete[] m_pName;
                m_pName = NULL;
            }
            cout << "
    基类析构" << endl;
        }
        void Print()
        {
            if ( m_pName )
                cout << m_pName <<endl;
           
            cout << m_nAge << m_fSalary << endl;
        }
    };

    class Manager:public Employee
    {
    private:
        int m_nLevel;
        MyDate m_nBirthDay;
    public:
        Manager(int nLevel)
            :Employee( "
    张三",20,2000 )
        {
            m_nLevel = nLevel;
            cout << "
    派生类构造" << endl;
        }
        ~Manager()
        {
            cout << "
    派生类析构" << endl;
        }
    };

    int main(int argc, char* argv[])
    {
       //
    构造顺序
        //
    基类====>成员======>派生类
        //
    析构顺序
        //
    派生类====>成员======>基类
        //
    如果基类有构造函数,派生类会产生一个默认的构造

        Employee e("abc",10,3568);   
        e.Print();
       
        return 0;
    }

  • 相关阅读:
    Linux 设置秘钥登录(SSH免密远程登录)
    maven profile动态选择配置文件
    PKU 1521 Entropy(简单哈弗曼树_水过)
    POJ 3253 Fence Repair(简单哈弗曼树_水过)
    XDU 1001 又是苹果(状态压缩)
    PKU 3318 Matrix Multiplication(神奇的输入)
    PKU 3318 Matrix Multiplication(随机化算法||状态压缩)
    PKU 2531 Network Saboteur(dfs+剪枝||随机化算法)
    PKU 1035 Spell checker(Vector+String应用)
    PKU 2002 Squares(二维点哈希+平方求余法+链地址法)
  • 原文地址:https://www.cnblogs.com/w413133157/p/1657046.html
Copyright © 2011-2022 走看看