开发者社区> 问答> 正文

为什么需要将Point2d类中的print函数声明为virtual?

为什么需要将Point2d类中的print函数声明为virtual?

展开
收起
花开富贵111 2024-06-19 14:11:26 15 0
1 条回答
写回答
取消 提交回答
  • 当基类中的成员函数被声明为virtual时,它允许在派生类中被重写(或称为覆盖)。这使得在运行时,当通过基类指针或引用调用该函数时,能够根据指针或引用实际指向的对象类型来确定要调用的函数,这就是动态绑定(或晚期绑定)。在上述示例中,通过将Point2d类中的print函数声明为virtual,我们可以确保当通过基类引用point(实际上是Point3d对象)调用print时,会动态地绑定到Point3d类的print函数,从而输出Point3d(0, 0, 0)。

    2024-06-19 15:06:24
    赞同 1 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载