-
1、只有类的成员函数才能声明为虚函数。 2、静态成员函数不能使虚函数,因为它不受限于某个对象。 3、内联函数不能使虚函数。 4、构造函数不能是虚函数。 5、析构函数可以是虚函数。 静态多态(早绑定)程序在运行之前,在编译阶段,已经决定到底要使用哪个函数了很早已经将函数编译进去了 动态多态(晚绑定):对不同的对象下达相同的指令,却做着不同的操作,必须以继承和封装为基础,至少为两个类查看全部
-
对于一个数据成员都没有的类,实例化的对象大小为1。目的是为了标识类的存在。 但是如果类成员中存在虚函数,则实例化的对象大小为4。 虚函数表的地址在类起始位置。查看全部
-
虚函数 & 虚析构函数 如何实现虚函数和虚析构函数 对象指针:指针指向对象。 指针指向函数。 多态的原理: 类:虚表指针->虚表中函数指针->虚函数 函数的覆盖与隐藏: 理论前提: 执行完子类的析构函数就会执行父类的析构函数查看全部
-
当类中仅含有虚析构函数,不含其它虚函数时,也产生虚函数表查看全部
-
只有虚析构函数,没有虚构造函数查看全部
-
virtual的限制: 不能修饰普通的函数,即全值函数;必须是某一类的成员函数; 不能修饰静态的成员函数(static); 不能够修饰内联函数(inline); 不能修饰构造函数。查看全部
-
接口类: 1. 没有成员数据 2. 只有成员函数 3. 成员函数都为虚函数查看全部
-
如果父类是抽象类,子类继承父类后,在定义成员函数时实现了继承的纯虚函数,那么子类可以被实例化。查看全部
-
包含纯虚函数的类是抽象类,抽象类不能被实例化。查看全部
-
如果delete后跟的是父类指针,只执行父类析构函数,如果是子类,则父类和子类都执行查看全部
-
RTTI动态类型转换查看全部
-
定义构造函数也要有{}查看全部
-
只有函数声明没有函数定义的虚函数是纯虚函数。查看全部
-
常见异常查看全部
-
虚函数表指针查看全部
举报
0/150
提交
取消