我一直想知道Swift的[Any]
数组如何在内部工作。 E.g。
struct Dog {
let name: String
let age: Int
}
struct Foo {
let a: String
let b: Int
let c: Int
}
func test() -> [Any] {
let s = [Dog(name: "James", age: 23), Foo(a: "abc", b: 2, c: 2)] as [Any]
return s
}
print(test()[0])
Swift是否只是简单地分配一个指针数组并将结构复制到堆中?或者还有其他一些魔法吗?它是否将数组桥接到NSArray?