【发布时间】:2015-03-07 21:31:16
【问题描述】:
为什么我可以有一个[AnyObject] 数组并在其中放入一堆不同大小的类型...
var a = [AnyObject]()
a.append(Int(1))
a.append(Float64(3.14))
a.append(Bool(true))
...除了Int32 和Int64 ....
a.append(Int32(1)) // err: type 'Int32' does not conform to protocol 'AnyObject'
a.append(Int64(1)) // err: type 'Int64' does not conform to protocol 'AnyObject'
AnyObject 的文档说:
“AnyObject 可以表示任何类类型的实例”
但是当我通过命令单击Int、Int32 或Int64 来查看这些类型的标准库定义时,我看到它们都是struct 值。
这里的根本问题是什么?为什么会这样设计?
【问题讨论】:
标签: swift