是否可以在typealias
或structs
中使用classes
?例如:
struct Foo {
typealias type = Int
}
编译没有错误。但是,当我使用这个结构时:
let f = new Foo
let bar: f.type
这给了我一个:
使用未声明的类型'f'
如何检索此存储类型?
这对于通用结构非常有用,例如:
struct TypeHolder<T> {
typealias type = T
}
let type1 = new TypeHolder<Int>
let fooint: type1.type
答案 0 :(得分:2)
是的,你可以这样做。
你犯了两个小错误:
new
。struct Foo {
typealias type = Int
}
let f = Foo()
let bar: Foo.type = 5