小编典典

嵌套类型数组:编译器为何抱怨?

swift

class ClassA {
    class ClassB {
    }
}
let compiles: [ClassA.ClassB]
let doesNotCompile = [ClassA.ClassB]()

游乐场执行失败:MyPlayground.playground:109:22:错误:无效使用’()’调用非函数类型’[ClassA.ClassB.Type]’的值时,让didNotCompile
= ClassA.ClassB ^ ~~


阅读 286

收藏
2020-07-07

共1个答案

小编典典

如您所述,它可以使用以下语法:

let arrayOfClassB: [ClassA.ClassB] = []

但是,[]()如果我们声明一个typealias

typealias InnerClass = ClassA.ClassB
let arrayOfAliasesOfClassB = [InnerClass]()

因此,我想说这是一个错误,let arrayOfClassB = [ClassA.ClassB]()也应该无需输入别名即可工作。

更新 :Apple
已经有一个与此相关的已打开错误

2020-07-07