我创建了两个类 Content和 Bucket。Bucket包含一个由 Content对象组成的数组,并通过一个公共属性公开该数组。然而,当我这样做时,我收到了错误:
Content
Bucket
属性不能声明为公共,因为其类型使用内部类型
知道为什么会出现错误吗?
Content也必须公开:
public class Content { … }
根据您的用例,您也可以将 Bucket声明为内部的。在这种情况下,只需省略 public关键字即可。
public
您还必须声明 Content类 public 的访问级别。
public class Content { // some code }
如 文件所述:
公共变量不能定义为具有内部变量或私有变量 类型,因为该类型可能不是在 使用公共变量。
默认情况下,类声明为 internal,因此必须添加 public关键字才能使它们公开。
internal
对于函数也存在类似的规则。
函数的访问级别不能高于其参数类型 以及返回类型,因为该函数可以在以下情况下使用 其组成类型对于周围的代码不可用。
我的问题是名称空间问题。
我声明了一个名为 Data的枚举,这与 Swift Data类混淆了,特别是在 Core Data 模型中的一个 imageData: Data属性。
Data
imageData: Data