1111面向对象程序设计中多态的表现 ◆面向对象程序设计中多态性表现为以下几种形 式 重载多态:通过调用相同名字的函数,表现出不同 的行为。运算符重载也是一种重载多态。 运行多态:通过基类的指针,调用不同派生类的同 名函数,表现出不同的行为。许多面向对象程序设 计的书籍中所说的多态性,就是这种多态。 ■模板多态,也称为参数多态:通过一个模板,得到 不同的函数或不同的类。这些函数或者类具有不同 的特性和不同的行为。 2021/2/24
2021/2/24 -6- 11.1.1面向对象程序设计中多态的表现 面向对象程序设计中多态性表现为以下几种形 式: ◼ 重载多态:通过调用相同名字的函数,表现出不同 的行为。运算符重载也是一种重载多态。 ◼ 运行多态:通过基类的指针,调用不同派生类的同 名函数,表现出不同的行为。许多面向对象程序设 计的书籍中所说的多态性,就是这种多态。 ◼ 模板多态,也称为参数多态:通过一个模板,得到 不同的函数或不同的类。这些函数或者类具有不同 的特性和不同的行为
11._2多态的实现:联编 个具有多态性的程序语句,在执行的 时候,必须确定究竟是调用哪一个函数。 也就是说,在执行的时候调用哪个函数 是唯一地确定的。确定具有多态性的语 句究竟调用哪个函数的过程称为联编 Binding),有的资料也翻译成“绑 定 2021/2/24
2021/2/24 -7- 11.1.2 多态的实现:联编 一个具有多态性的程序语句,在执行的 时候,必须确定究竟是调用哪一个函数。 也就是说,在执行的时候调用哪个函数 是唯一地确定的。确定具有多态性的语 句究竟调用哪个函数的过程称为联编 (Binding),有的资料也翻译成“绑 定”
11._2多态的实现:联编 ◆联编有两种方式:静态联编和动态联编。 ◆在源程序编译的时候就能确定具有多态 性的语句调用哪个函数,称为静态联编 ◆对于重载函数的调用就是在编译的时候 确定具体调用哪个函数,所以是属于静 态联编。 2021/2/24
2021/2/24 -8- 11.1.2 多态的实现:联编 联编有两种方式:静态联编和动态联编。 在源程序编译的时候就能确定具有多态 性的语句调用哪个函数,称为静态联编。 对于重载函数的调用就是在编译的时候 确定具体调用哪个函数,所以是属于静 态联编
11._2多态的实现:联编 ◆动态联编则是必须在程序运行时,才能够确定 具有多态性的语句究竟调用哪个函数。用动态 联编实现的多态,也称为运行时的多态。以上 所述的几种多态形式中,只有运行多态是属于 动态联编。以后我们会看到,在一个循环中的 同一个语句,第一次循环时调用的是一个函数, 第二次循环时调用的是另一个函数。这种结果, 程序不运行是看不到的。所以称为动态联编。 2021/2/24
2021/2/24 -9- 11.1.2 多态的实现:联编 动态联编则是必须在程序运行时,才能够确定 具有多态性的语句究竟调用哪个函数。用动态 联编实现的多态,也称为运行时的多态。以上 所述的几种多态形式中,只有运行多态是属于 动态联编。以后我们会看到,在一个循环中的 同一个语句,第一次循环时调用的是一个函数, 第二次循环时调用的是另一个函数。这种结果, 程序不运行是看不到的。所以称为动态联编
11.2继承中的静态联编 2021/224 10
2021/2/24 10 11.2 继承中的静态联编