我最近读过维基百科上的Dynamic Dispatch,无法理解C++中动态调度和后期绑定之间的区别.
当使用每种机制时?
来自维基百科的确切报价:
动态调度与后期绑定(也称为动态绑定)不同.在选择操作的上下文中,绑定是指将名称与操作相关联的过程.调度是指在确定名称引用的操作后选择操作的实现.使用动态分派时,名称可能在编译时绑定到多态操作,但是直到运行时才会选择实现(这是动态分派在C++中的工作方式).但是,后期绑定确实意味着动态调度,因为在选择了名称所引用的操作之前,您无法选择要选择的多态操作的哪个实现.
我正在Apple的Objective-C指南中进行面向对象编程.在Dynamism - > Dynamic Binding的主题下,有三个概念:
我几乎了解动态和后期绑定之间的差异,但静态绑定会让人感到困惑.有人可以用Objective-C或C++中的例子解释这三个概念之间的差异吗?
注意:在您考虑将此问题标记为重复之前,没有任何问题可以同时描述这三个问题.