使用带有类型参数的内部函数类型时出错
Error when using type of inside function that takes type parameter
为什么在简单函数中使用 type(of:) 时没有问题。但是一旦函数更改为接受通用参数 T,type(of:) 就会破坏自己吗?即使函数签名中没有任何内容会影响它。
使 type(of:) 失败的 function2 签名中有什么?
当您说 type
时,Swift 以为您指的是函数的 参数 type
,但实际上您指的是 type(of:)
function.
您可以指定type(of:)
函数的模块名称(Swift
)来区分:
Swift.type(of: controller)
或将参数重命名为其他名称:
public func function2<T>(t: T.Type, controller: UIViewController) -> Any
^
为什么在简单函数中使用 type(of:) 时没有问题。但是一旦函数更改为接受通用参数 T,type(of:) 就会破坏自己吗?即使函数签名中没有任何内容会影响它。
使 type(of:) 失败的 function2 签名中有什么?
当您说 type
时,Swift 以为您指的是函数的 参数 type
,但实际上您指的是 type(of:)
function.
您可以指定type(of:)
函数的模块名称(Swift
)来区分:
Swift.type(of: controller)
或将参数重命名为其他名称:
public func function2<T>(t: T.Type, controller: UIViewController) -> Any
^