zoukankan      html  css  js  c++  java
  • C++虚函数相关内容

    样例代码

    class Base
    {
    public:
    Base(){};
    virtual ~Base(){    //若没有设置为虚函数:如果有这样的指针Base *p=new Derived();声明,则在delete p时不能调用Derived析构,会出现泄漏。
    cout << "Base" << endl;
    };
    virtual void DoSomething(){ //若不为虚函数:则同上,父类指针不能使用子类里面的DoSomething()方法
    cout << "Do Base!" << endl;
    };
    };
    class Derived :public Base{
    public:
    Derived(){};
    ~Derived(){
    cout << "Derived!" << endl;
    }
    void DoSomething(){
    cout << "Do Derived!" << endl;
    }
    void f(){             //该函数只有在子类指针中调用
    cout << "Hello!" << endl;
    }
    };

    总结:虚函数最直观的解释就是,让父类能够使用子类的方法(这种使用方式可以类比为继承的反用法)。

  • 相关阅读:
    D3 data
    cubism.js
    git
    Render函数
    Vue 响应式原理
    JSSDK使用步骤
    用js获取access_token
    微信公众平台appid和appsecret在哪
    组件
    表单控件绑定
  • 原文地址:https://www.cnblogs.com/newguy/p/5367028.html
Copyright © 2011-2022 走看看