什么是 Smalltalk 中的“无限动态多态性”?有人可以举个例子吗?
在这个 book 中提到了它:C++ 模板:完整指南,p. 238.
最佳答案
See 在 C++ 中: 通过继承实现的多态性是有界的和动态的:
- 有界意味着参与多态行为的类型的接口(interface)由公共(public)基类的设计预先确定(此概念的其他术语是侵入性或侵入性)。
- 动态意味着接口(interface)的绑定(bind)是在运行时(动态地)完成的。
通过模板实现的多态性是无限的和静态的:
- 无界意味着参与多态行为的类型的接口(interface)不是预先确定的(这个概念的其他术语是非侵入性或非侵入性的)。
- 静态意味着接口(interface)的绑定(bind)在编译时完成(静态)。
在 Smalltalk 中,一个对象可以决定它是否以及如何对在运行时发送的消息使用react。
关于polymorphism - Smalltalk 中的 "unbounded dynamic polymorphism"是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9295814/