2016-05-12 74 views
-2

当我设置ca如何将值分配给[任何]

var a: [Any] 
var c: Array<PostCategory> 

所示错误:

不能转换类型“阵列”到预期参数类型 [任意]的值

如何解决问题?

+0

实际的任务在哪里? – Alexander

+1

[为什么不是\ [SomeStruct]可转换为\ [Any \]?](http://stackoverflow.com/questions/37188580/why-arent-somestruct-convertible-to-any) – Hamish

回答

0

错误信息是有点误导,但尝试分配它之前初始化数组:

var c: Array<PostCategory> = [] 

......或者......

var c = Array<PostCategory>() 
0

我打赌你PostCategory是一个struct。显然结构数组不能转换为任何数组。这很奇怪,因为所有类型都符合Any协议。

如果将PostCategory更改为class,则应该正常工作。您可能需要为该类创建一个新的初始化程序,因为类不会像结构那样为您提供相同的初始化程序。

+0

是,PostCategory是一个结构体,有什么等同于任何结构体的 –