weixin_33313360
xqc败北
采纳率100%
2016-02-04 01:03 阅读 1.4k

关于c++中一些问题,继承,

1,静态成员函数可以声明为虚函数吗?
2,派生类构造函数对基类构造函数的调用顺序就是基类构造函数的执行顺序,这句话错在了哪里?真相是什么样的?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • 已采纳
    91program 91program 2016-02-04 01:29

    内联函数,构造函数,静态函数都不能是虚函数

    点赞 1 评论 复制链接分享
  • u011228598 bossanovo 2016-02-04 03:42

    继承派生有两种,简单继承和混合继承

    1|首先是简单继承的构造调用:

    class A{
    A(){@1}

    class B pulic A{
    B(){@2}

    B* b=new B();
    首先在调用的时候
    会先调用a的构造函数,然后再调用b的构造函数,就是先执行@1,再执行@2部分

    说明:派生类在创建的时候,是从基类开始一层一层向下构造的,直到最后调用被实例化的派生类构造函数调用为止。

    2|混合继承构造函数调用:

    class A{
    A(int i){}

    class B pulic A{
    B():A(2),a1(1),a2(3){}

    private:
    A a1;
    A a2;

    B* b=new B();

    这时B中包含有A的变量,在构造函数调用时:

    1.调用A的构造函数,
    2.调用A的构造函数,
    3.调用A的构造函数,
    4.调用B的构造函数。

    点赞 1 评论 复制链接分享

相关推荐