var array = [AnyObject]()
struct Test {}
array.append(Test())
当我在游戏场中编写此代码时,它给了我以下错误 类型"测试"不符合协议"AnyObject"
我猜它失败了,因为结构是值类型而不是引用类型。但是当我运行此代码时
var array = [AnyObject]()
array.append(1)
array.append(2.0)
array.append("3")
它有效但这些也是值类型,但在这种情况下没有给出错误为什么?
对于您的成功案例,幕后正在进行一些转换。
尝试在追加末尾添加以下内容,看看发生了什么:
for item in array {
print(item.dynamicType)
}