【发布时间】:2014-06-05 02:00:10
【问题描述】:
Swift 中的Array 类型有一个名为sort 的成员函数,其签名为sort(isOrderedBefore: (T, T) -> Bool)。这个函数不同于sort的全局版本,它的签名是sort(array: T[], pred: (T, T) -> Bool)。
如果扩展了Array(参见Why does the same method fail when inside an Array extension in Swift?),从Array 扩展范围内调用sort 自然会导致使用本地版本。
是否可以从外部作用域显式调用函数,或者专门从全局作用域调用函数,即使它的名称与内部作用域的函数的名称一致?
这类似于 C++ 范围解析运算符 ::
【问题讨论】:
-
啊,你的意思是像 C++ 的全局作用域运算符
::?有趣的问题。 -
@Yawar,是的,完全正确。
标签: swift