天天看点

九、虚函数与普通函数区别

虚函数

主要是为了多态。正常情况下,父类无法调用子类的成员函数,但是一旦子类的函数是虚函数,那么父类就可以调用该函数。案例如下:

Parent *p = new Children();
     //调用 Parent 类中的 method() 方法
     p->method();
     //调用 Children 类中的 virtualMethod() 方法
     p->virtualMethod();
           

Qt中虚函数使用

主要在申明上有所区别:

protected:
    /**
     * Q_DECL_OVERRIDE:这个宏表示修饰的函数是对父类虚函数的重载
     */
    void paintEvent(QPaintEvent *event) Q_DECL_OVERRIDE;
           
Qt

继续阅读