重载解析

    args中的每个arg都需要匹配。参数可以匹配的方式有多种不同的类别。 设 f 是形式参数的类型, a 是参数的类型。

    • 准确匹配: a 和 f 是相同类型。
    • 泛型匹配: f 是泛型类型且 a 匹配, 例如 a 是 int 且 f 是泛型限制 (受限) 形参类型 (像 [T] 或 [T: int|char].
    • 整数转换匹配: a 可转换为 f 且 f 和 a 是同样的整数或浮点类型。

    如果下列算法返回真,例程 pq 更匹配:

    如果算法返回 "歧义" 则执行进一步消歧: 如果参数 a 通过子类型关系匹配 p 的参数类型 fqg ,则考虑继承深度:

    同样,对于通用匹配,匹配的结果中首选最特化的泛型类型: