C++程序设计语言中虚函数指针和虚函数表的作用?
答案:2 悬赏:80 手机版
解决时间 2021-02-23 04:08
- 提问者网友:半生酒醒
- 2021-02-22 09:53
C++程序设计语言中虚函数指针和虚函数表的作用?
最佳答案
- 五星知识达人网友:行路难
- 2021-02-22 10:06
参考答案: C++编译器为每个“内含虚拟函数的类”建立一个虚拟函数表(vtablE.,表中每一个指针元素指向一个虚拟函数的地址,编译器为类加上一个成员变量vptr,vptr是一个指向虚拟函数表的指针。每一个派生类的对象,都有一个vptr,对象调用虚拟函数就是通过vptr找到虚拟函数表,再找到虚拟函数的真正地址。虚拟函数表的内容是依据类中的虚拟函数声明次序一一填入函数指针。派生类继承基类的虚拟函数表,派生类中改写虚拟函数,虚拟函数表中元素所指的函数地址不再是基类的函数地址,而是派生类的函数地址。包含虚拟函数的类通过vptr指针和虚拟函数表可以在程序运行时依据指针实际指向的对象调用对应的虚拟函数,从而实现多态(Polymorphism)。为了达到动态绑定的目的,虚拟函数是了解多态(Polymorphism)以及动态绑定的关键,同时也是了解如何使用MFC的关键。
试题难度:★★☆
参考解析:
试题难度:★★☆
参考解析:
全部回答
- 1楼网友:爱难随人意
- 2021-02-22 11:27
这个解释是对的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯