多方法

    程序总是使用静态调度。多方法使用动态调度。 要使动态分派处理对象,它应该是引用类型。

    从示例中可以看出,基本方法必须使用 base 编译指示进行注释。 base 编译指示还可以提醒程序员使用基本方法 m 作为基础来确定调用 m 可能导致的所有效果。

    注意: 从Nim 0.20开始,不推荐使用泛型方法。

    1. type
    2. Thing = ref object of RootObj
    3. x: int
    4.  
    5. method m(a: Thing) {.base.} =
    6.  
    7. method m(a: Unit) =
    8. # Call the base method:
    9. echo "1"