gpt4 book ai didi

generics - Swift - 获取泛型类型的类

转载 作者:行者123 更新时间:2023-11-28 09:18:47 26 4
gpt4 key购买 nike

我有非常基本的模型,比如

class Model {

}

class User : Model {

}

class Group : Model {

}

现在我需要检查泛型类型以了解哪个类作为参数发送

func getRepository<ModelType: Model>() {
if (typeof(ModelType) == User.self) {
// Do something specific to User
} else {
.....
}
}

但我不知道如何获取通用类型的类。

非常感谢您的回答。

干杯

最佳答案

这个怎么样https://gist.github.com/MartinJNash/e2bb27937711f350aa44 ?我不确定它是否有效,但我的想法是获取字符串中的类名然后比较它们:

class Model {
class func classString() -> String {
return NSStringFromClass(self)
}
}


func getRepository<ModelType: Model>() {
if (ModelType.classString() == User.classString()) {
// ...
}
}

关于generics - Swift - 获取泛型类型的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26211695/

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