《C++程序设计》学习笔记总结 - 第六章 多态与虛函数.docxVIP

  • 3
  • 0
  • 约6.81千字
  • 约 17页
  • 2023-07-31 发布于北京
  • 举报

《C++程序设计》学习笔记总结 - 第六章 多态与虛函数.docx

第六章 多态与虛函数 一、多态的基本概念 ?多态分为编译时多态和运行时多态。 ?编译时多态主要是指函数的重载(包括运算符的重载)。对重载函数的调用,在编译时就可以根据实参确定应该调用哪个函数,因此称为编译时多态。编译阶段的多态称为静态多态; ?运行时多态则和继承、虚函数等概念有关。本章中提及的多态主要是指运行时多态。运行阶段的多态称为动态多态。 多态 程序编译阶段都早于程序运行阶段,所以静态绑定称为早绑定,动态绑定称为晚绑定。静态多态和动态多态的区别,只在于在什么时候将函数实现和函数调用关联起来,是在编译阶段还是在运行阶段,即函数地址是早绑定的还是晚绑定的。 ?在类之间满足赋值兼容的前提下,实现动态绑定必须满足以下两个条件: ?? ??? ??? ?1)必须声明虚函数。 ?? ??? ??? ?2)通过基类类型的引用或者指针调用虚函数。 虚函数 所谓“虚函数”,就是在函数声明时前面加了virtual关键字的成员函数。virtual关键字只在类定义中的成员函数声明处使用,不能在类外部写成员函数体时使用。静态成员函数不能是虚函数。包含虚函数的类称为“多态类”。 ?? ??? ??? ?声明虚函数成员的一般格式如下: ?? ??? ?? ??virtual 函数返回值类型 函数名(形参表); 在类的定义中使用virtual关键字来限定的成员函数即成为虚函数。再次强调一下,虚函数的声明只能

文档评论(0)

1亿VIP精品文档

相关文档