ArraySwift中的类型有一个名为的成员函数sort,其签名为sort(isOrderedBefore: (T, T) -> Bool).此功能与sort具有签名的全局版本不同sort(array: T[], pred: (T, T) -> Bool).
如果扩展一个Array(请参阅为什么在Swift中的Array扩展内部时同一方法失败?),sort从Array扩展范围内调用自然会导致使用本地版本.
是否可以从外部作用域显式调用函数,或者特别是从全局作用域调用函数,即使它的名称与内部作用域的函数名称一致?
这类似于C++作用域解析运算符, ::
Yaw*_*war 35
Chris Lattner建议使用Swift的默认命名空间来限定全局函数的名称Swift.因此,您应该能够使用以下方式访问全局版本:Swift.sort.
| 归档时间: |
|
| 查看次数: |
3801 次 |
| 最近记录: |