<span>C++继承时的一些细节知识点</span>

  • 编译器只有在一个类中没有一个构造函数的时候自动生成默认构造函数,当类中有任何一个类的时候,系统便不会再生成默认构造函数。

  • 基类的成员变量在派生类中不可直接访问,但可以以间接访问,例如通过调用基类的成员函数来实现。

  • 不同继承方式的影响主要体现在:

  1. 派生类成员对基类成员的访问权限;
  2. 通过派生类对象对基类成员的访问权限;
  • 派生类对象的体积,等于基类对象的体积,再加上派生类对象自己的成员变量的体积。在派生类对象中,包含着基类对象,而且基类对象对象的存储位置位于派生类对象新增的成员变量之前。

public继承时的赋值兼容规则:

 class base{   };
 class derived : public base{    };
 base b;
 derived d;
  1. 派生类的对象可以赋值给基类对象
    b=d;

  2. 派生类对象可以初始化基类引用

    base &br=d;

  3. 派生类对象的地址可以赋值给基类指针

    base *pb=&d;

注:如果派生方式时private或protected,则上述三条不可行。

全部评论

相关推荐

这算盘打的
程序员小白条:都这样的,都是潜规则,你自己说可以实习一年就行了,实习可以随便跑路的
点赞 评论 收藏
分享
Lorn的意义:你这标个前端是想找全栈吗?而且项目确实没什么含金量,技术栈太少了,边沉淀边找吧 现在学院本想就业好一点四年至少得高三模式两年加油吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务