c++面试题2:虚函数是如何实现的?

C++中的虚函数通过虚函数表来实现,每个类的虚函数对应表中的指针。虚表在编译时由编译器自动添加,用于解决继承和覆盖问题。虚函数的主要作用是实现动态联编,使得在运行时可以动态选择合适的成员函数。调用虚函数必须通过基类引用或指针,若派生类重写虚函数,则虚表会指向派生类的实现。
摘要由CSDN通过智能技术生成

c++面试题2:虚函数是如何实现的?

1、虚函数如何实现的?

  • 虚函数是通过一张虚函数表实现的,有多少个虚函数,就有多少个指针;
  • 在这个表中,主要是一个类的虚函数的地址表,这张表解决了继承、覆盖的问题;
  • 实际上在编译的时候,编译器会自动加上虚表
  • 虚函数的作用实现动态联编,也就是说在程序运行阶段动态的选择合适的成员函数,在定义了虚函数之后,可以在基类的派生类中对虚函数重新定义。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值