考虑以下:
struct SomeStruct {}
var foo: Any!
let bar: SomeStruct = SomeStruct()
foo = bar // Compiles as expected
var fooArray: [Any] = []
let barArray: [SomeStruct] = []
fooArray = barArray // Does not compile; Cannot assign value of type '[SomeStruct]' to type '[Any]'
我一直在寻找背后的逻辑,但是没有运气。值得一提的是,如果将结构更改为类,则效果很好。
总是可以添加一种解决方法,并将fooArray的每个对象映射为强制类型为Any,但这不是这里的问题。我正在寻找一种解释,为什么会这样。
 一只名叫tom的猫
一只名叫tom的猫 
					收到一只叮咚
 
					手掌心
 
					MM们
 随时随地看视频慕课网APP
随时随地看视频慕课网APP