【发布时间】:2016-09-17 13:31:18
【问题描述】:
使用_base 属性访问ReverseRandomAccessCollection 的元素是一种好习惯吗?
let myArray = [1, 2, 3]
print(myArray.first) // returns 1
print(myArray.reversed().first) // returns 3
print(myArray.reversed()._base.first) // return 1, which is the underlying base array
【问题讨论】:
-
我得到不同的结果:
myReversedArray.first返回 3,myReversedArray._base.first返回 1。使用以下划线 (_) 开头的任何属性或方法时要非常小心。这些是未记录的,适用于编译器 -
当你用
myArray的反转版本初始化它时,为什么myReversedArray.first会返回1? -
抱歉各位,有错字,我更新了代码。
-
我得到了相同的结果:
1 3 1 -
获取 1-3-1 复制和粘贴您自己的代码。你确定你运行的和你在这里展示的一样吗?什么版本的 Swift?