首页 > 编程语言 > 详细

C++-------基类子类的相关问题

时间:2019-06-05 12:06:05      阅读:76      评论:0      收藏:0      [点我收藏+]
一、类的赋值兼容原则:
1.子类对象可以赋值给基类对象
class A
{
}

class B:public A
{
}

在主函数中:
/*
A a1;
B b1=a1;   //不可以,因为b1的空间比a1大,a1赋值过来不满足空间大小
*/

/*
B b1;
A a=b1;    //可以进行,a1只用到b1的部分地址
*/

2.子类对象可以当做父类对象使用
 (即通俗理解父类中的代码子类同样拥有)


3.基类指针可以指向子类对象
  (若用子类指针指向基类对象,此时基类不满足子类,子类中的自己的内存布局基类中没有,报错。)
二、子类的构造和析构
  在调用子类的构造函数时候,一定会调用基类的构造函数
  基类先构造,子类后构造
  基类后析构,子类先析构
  

三、子类基类中出现同名变量a (基类A,子类B)
  若同名变量都为public,且为公有继承
  在子类中输出this->a,此时的a是子类中的a,若要输出基类中的a,需要用域名A::a来显示调用输出


四、继承中的静态成员变量
  静态成员变量对所有家族成员都共享(静态成员变量需要在基类中声明并用基类域名进行初始化)

 

C++-------基类子类的相关问题

原文:https://www.cnblogs.com/god-for-speed/p/10978383.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!