-
隐藏特性
的
查看全部 -
公有继承,的
查看全部 -
不同继承方式
查看全部 -
protected继承:基类的public、protected成员继承到派生类会成protected成员,而基类private成员无法访问;
private继承:基类的public、protected成员继承到派生类会成为private成员,而基类private成员无法访问
查看全部 -
保护、私有成员无法在main函数中直接访问;共有继承无法将私有数据成员继承到派生类当中
查看全部 -
类的封装后续,类的继承,父类子类,基类派生类,公有继承,保护继承,私有继承,共有成员,保护成员,私有成员。
查看全部 -
多继承时: ●子类的构造函数要用初始化列表的方式初始化从父类继承过来的成员列表; ●实例化子类对象的时候,先执行父类的构造函数,父类的构造函数的执行顺序按照初始化成员列表的先后顺序执行,再执行子类的构造函数。 ●析构函数的执行顺序和构造函数的执行顺序相反查看全部
-
●在最底层的类,要实例化对象,就必须执行继承量当中的每一个类 ●在销毁的时候,逆序执行 无论继承有多少级,只要保持间接或者直接的关系,子类都可与自己的直接父类,或者是间接父类,称之为is a 的关系 ●能够通过父类的指针对直接子类或者是间接子类的对象进行操作查看全部
-
● test1 以对象为参数,会实例化一个对象副本并在函数结束时自动销毁; ●test2 以引用为参数,不会产生新的对象,只是产生一个引用,因此不会调用构造/析构函数; ●test3 以指针为参数,使用时以&p为参数,结果与test2相同查看全部
-
include包含头文件时注意双引号“”和尖括号<>编译器会搜索不同的路径 (1)尖括号<>是引用C++自身文件库里的头文件,如<iostream> (2)双引号“”则是引用用户自己编写的头文件,如“Person.h”查看全部
-
!公有继承: 基类的公有成员仍然为公有成员,可以有派生类成员函数和派生类对象直接访问。 基类的私有成员在派生类中无论是派生类的成员还是派生类的对象都无法直接访问。 保护成员在派生类中仍然为保护成员,可以通过派生类的成员函数访问,但不能通过派生类的对象访问。 !私有继承: 基类的公有和保护成员都被继承为派生类的私有成员,派生类的成员函数可以直接访问。 基类的私有成员不可直接访问,无论是派生类的成员还是派生类的对象都无法访问。 !保护继承: 基类的公有和保护成员都被继承为派生类的保护成员,派生类的成员函数可以直接访问基类的公有和保护成员 。 基类的私有成员在派生类中不能直接被访问查看全部
-
C++中如果出现菱形继承,在定义父类中的两个子类时,会引用两次父类的.h文件,此时编译器会报错提示出现重定义父类。
重定义的解决办法为在父类中进行宏定义
#ifndef PERSON_H
#define PERSON_H
在代码最后加上:
#endif
从而不会导致重复定义
查看全部 -
C++中可能会出现菱形继承,最终的子类可能拥有两个相同个最顶部的父类,此实需要使用的时虚继承方法:
将中间类在继承父类时,使用virtual虚继承:
查看全部 -
C++中如果通过父类指针构建一个子类对象,再释放内存是,无法调用子类析构函数。
此时需要用道虚析构函数,即在父类析构函数中添加virtual,是的在调用父类析构函数时可以调用子类的析构函数
查看全部 -
!public数据成员继承到public里 !private的数据成员继承到不可见位置,会报错 !protected在不涉及继承时,与private用法一样,涉及继承时不一样,它会继承到相应protected位置下查看全部
举报
0/150
提交
取消