类型别名泛型函数变量

时间:2020-04-18 13:08:36

标签: ios swift function generics type-alias

我在 A类

中有以下函数声明
typealias Callback<T> = (Result<T>) -> ()

尝试在 B类

中声明变量
var callbackVariable: A.Callback<T>?

编译器说:使用未声明的类型'T'

如何在B类中声明变量?

1 个答案:

答案 0 :(得分:2)

您需要:

  1. 指定T的类型
  2. 或者,也使B类通用。
// 1. Specify a type for T
class B {
  var callbackVariable: A.Callback<String>? // Or some other type
}

// 2. Or, make the B class generic as well.
class B<T> {
  var callbackVariable: A.Callback<T>?
}