• c++多态


    #include "stdafx.h"
    #include <iostream>
    #define _NRT_SECURITY_NO_WANING
    using namespace std;
    class IProgram 
    {
    public:
        virtual void getSal()=0;
    
    
    };
    class Program:IProgram
    {
    public:
        Program(char *name,int sal) 
        {
            this->sal = sal;
            this->name = name;
        }
    protected:
        char* name;
        int sal;
    
    public:
        
        // 通过 IProgram 继承
        virtual void  getSal() override
        {
            cout << "name:	" << name << " sal:	" << sal << endl;
        }
    
        
    
    };
    class supperPrograma : public Program,public IProgram
    {
    public :
        supperPrograma(char *name,int sal):Program(name,sal)
        {
            
        }
    
    
    
        // 通过 IProgram 继承
        virtual void getSal() override
        {
            Program(this->name, this->sal).getSal();
        }
    
    };
    class midPrograma : public Program , public IProgram
    {
    public:
        midPrograma(char *name, int sal) :Program(name, sal)
        {
            
        }
    
        // 通过 IProgram 继承
        virtual void getSal() override
        {
            Program(this->name, this->sal).getSal();
        }
    
    
    };
    class changjing 
    {
    public:
        void dis(IProgram* p) 
        {
            p->getSal();
        }
    };
    void main() 
    {
        changjing* c = new changjing();
        c->dis(new supperPrograma ("张三",1000));
        
        
        system("pause");
    
    }
  • 相关阅读:
    c中的数组与字符串
    c中的函数
    C中的流程控制
    c中的基本运算
    scanf函数
    c中的数据类型、常量、变量
    c中的关键字、标识符、注释
    ios必须知道的事情
    安卓开发之获取SD卡空间数据
    安卓日志猫的使用
  • 原文地址:https://www.cnblogs.com/kexb/p/5540420.html
Copyright © 2020-2023  润新知