我有些难以理解AnyObject的限制。
从头文件可以看出,Array是一个结构体。尽管如此,以下代码仍然有效:
var whatobject : AnyObject
whatobject = [1,2]
不仅仅是文字数组:
并且这也不只是针对文字数组的情况:var whatobject : AnyObject
let arr = [1,2,3]
whatobject = arr
然而,我无法将自己创建的结构体赋值给whatobject
:
struct S {}
var whatobject : AnyObject
whatobject = S() // error
所以,数组毕竟不是结构体吗?