C++中的虚函数问题
来源:互联网 发布:拳击直播软件 编辑:程序博客网 时间:2024/06/16 19:26
1. 构造函数中可以调用虚函数吗
可以,只是不会产生动态行为,因为构造函数是从基类开始构造,基类在调用虚函数时,子类还未构造,所以调用的是基类的函数。
2.析构函数可以调用虚函数吗
如果在父类析构函数中调用虚函数,其实际调用的是子类的函数,而此时子类析构函数已经把数据销毁了,会出现不可知的结果。
3.析构函数可以调用纯虚函数吗
不可以,编译会出错。
5.析构函数可以是纯虚函数吗
可以,但是基类必须提供该析构函数的定义,此时基类是抽象类。抽象类的纯虚函数必须由派生类实现,除析构函数可以自身定义外。
6.普通成员函数可以调用虚函数吗
可以,如果基类和子类普通成员函数完全相同,子类会隐藏基类的成员函数,产生动态行为。
总结:C++动态绑定机制仅适用于完全构造的对象,构造和析构函数一样,对象不完整。 如果在部分构造的函数对象上动态绑定,行为很怪异(与实现有关)
0 0
- C 语言中的 printf 函数问题
- object-c中的私有函数问题
- [C++]C++中的虚函数
- C++中的虚函数问题
- ANSI C中的细节问题之四:函数及其调用
- C库中的qsort函数的问题分析
- C语言函数参数中的表达式顺序问题
- c++和c语言中的函数相互调用的问题
- C/C++中的max/min函数宏定义问题
- c指针在函数调用过程中的问题
- jsp中的c函数标签日期,数字格式化的问题
- 【C++】C++中的Sequence Point,构造函数等问题
- c中的函数指针
- C ++ 中的函数
- C中的随机数函数
- c中的strtok函数
- c语言中的函数
- C中的static函数
- Qt Creator调用C语言编译的.So动态库
- kafka管理Topic
- 线程池学习
- dispatchTouchEvent
- Android图像处理之Canvas
- C++中的虚函数问题
- 表单元素汇总
- spring事务默认运行时异常回滚,RuntimeException
- 什么是产品的流程图?看完你就懂了
- <香港科技大学html+css+js课堂笔记>week3--DOM模型基础
- Shell中的函数调用
- 动画—CALayer的初步学习一:CALayer属性—隐式动画(学会从博客上自学)
- adb命令
- Android 图片压缩