gpt4 book ai didi

ios - 在闭包中使用元类型

转载 作者:行者123 更新时间:2023-11-29 05:30:16 24 4
gpt4 key购买 nike

是否可以在闭包中使用元类型?我想出的最简单的例子不起作用

let type = String.self
let closure = { () -> type in
return type.init()
}

编译器在第二行提示类型:

Use of undeclared type 'type'

我想知道有没有办法让它发挥作用?

如果您想知道真正的用例是依赖注入(inject),我可以在 forEach 循环中注入(inject)相关类型。

最佳答案

您可以简单地使用泛型约束,而不是将类型作为常量,然后您只需弄清楚编译器如何推断您的类型。

func makeSomething<T: YourProtocol>(...) {
let closure = { () -> T in
return T()
}
}

关于ios - 在闭包中使用元类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57668674/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com