zoukankan      html  css  js  c++  java
  • C++的虚函数试题,常考!!

    #include <iostream>
    #include <cstring>
    #include <string.h>
    #include <stdio.h>
    using namespace std;
    
    class parent
    {
    public:
    virtual void output();
    virtual void aaa();
    };
    void parent::output()
    {
    cout<<"parent";
    aaa();
    }
    void parent::aaa()
    {
    cout<<"aaa";
    }
    class son:public parent
    {
    
    public:
        virtual void output();
        virtual void aaa();
    };
    void son::output()
    {
        cout<<"son";
        aaa();
    }
    void son::aaa()
    {
    cout<<"bbb";
    }
    int main()
    {
    son s;
    //memset(&s,0,sizeof(s));
    parent &p=s;//reference
    p.output();
    cout<<endl;
    parent *q=&s;//pointer
    q->output();
    return 0;
    }

    输出

    sonbbb
    sonbbb
    构造父类引用或者指针,在运行时才决定调用哪一个子类还是本身的函数,当没有virtual时,调用自己 的函数。
    当有virtual时调用子类的同名复写函数。。。。



    附加题
    一颗完全2叉树有699个节点,求叶子结点?
    对于完全二叉树,根节点到上一层节点的所有结点是512个,因此最后一层叶子结点是187个;
    对应予上一层的父节点有187/2+1=94个;
    上一层的所有结点数为,256;
    因此上一层剩余的结点数位256-94=162个。并且这些结点就是叶子结点。
    因此叶子结点总数为187plus162=349个

  • 相关阅读:
    继承映射
    一对多,多对一,自关联的配置
    Spring 配置自动扫描spring bean配置
    Dao 处理
    2019暑假集训 括号匹配
    2019暑假集训 BLO
    2019暑假集训 Intervals
    2019暑假集训 平板涂色
    2019暑假集训 走廊泼水节
    0002-五层小山
  • 原文地址:https://www.cnblogs.com/fickleness/p/3342752.html
Copyright © 2011-2022 走看看