zoukankan      html  css  js  c++  java
  • 子类虚函数C++ 继承中子类与父类虚函数入栈顺序 及父类私有虚函数的调用方式

    发一下牢骚和主题无关:

        如果子类中有虚函数则先将子类的虚函数入栈,然后是父类的虚函数,如果子类写重了父类的虚函数,则入栈的是子类写重的函数,即写重的子类的函数替换对应的父类的虚函数。

        如://A.h

        #ifndef __A_H
    #define __A_H
    #include <iostream>
    using namespace std;
    class A{
    //private:
    virtual void f()
    {
    cout<<"A::f"<<endl;
    }
    virtual void g(){
    cout<<"A::g"<<endl;
    }
    };

        #endif

        //B.h

        每日一道理
    天又快黑了,这座忙碌的城市又将入睡,让这劳累的“身躯”暂别白日的辛勤,让它入睡,陪伴着城市中的人们进入梦乡。当空的弯月正深情地注视着这座城市与城市中的人们,看着家家户户的灯渐渐熄灭,它在床头悄悄奏响“明月曲”……

        #ifndef __B_H
    #define __B_H

    //#include <iostream>
    #include "A.h"

    class B:public A{
    void d()
    {
    cout<<"B::d"<<endl;
    }
    virtual void h()
    {
    cout<<"B::h"<<endl;
    }
    };
    #endif

        //main.cpp

        #include "B.h"
    typedef void(*Fun)(void);
    int main()
    {
    B b;
    Fun pFun;
    int i;
    for(i=0;i<3;i++)
    {
    pFun=(Fun)*((int*)*(int*)(&b)+i);
    pFun();
    }
    }

        

    文章结束给大家分享下程序员的一些笑话语录: 一条狗在街上闲逛,看见橱窗里一张告示:「招聘程序员。会编程,有团队精神,至少精通两种语言。均等机会。」
      那条狗就进去申请,但是被拒绝了。
      「我不能雇一条狗在公司里做事。」经理说。
      狗不服气,指着告示上「均等机会」几字抗议。
      经理没法,叹了口气,不屑地问道:「你会编程吗?」
      那条狗默默地走到电脑前,编了个程序,运作准确。
      「你有团队精神吗?」经理问。
      那条狗掉头看了看门外,一大群野狗在外面虎视耽耽。
      「我真的不能雇狗做这份工作。」经理气急败坏地说。
      「就算会编程、有团队精神,但是我需要的雇员至少要能精通两种语言。」
      那条狗抬头看着经理说:「喵-噢。」

  • 相关阅读:
    专业英语阅读(二)
    专业英语阅读(一)
    高精度运算
    高精度运算——加减乘除阶乘
    python常见编程面试题汇总
    python线程
    反射
    单例模式
    生成器、迭代器
    python装饰器
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3045630.html
Copyright © 2011-2022 走看看