func setGeneric<T>(type: T.Type){ }setGeneric(Int.self)
但是我们如何从函数返回类型?写一些东西
func getGeneric<T>() -> T.Type{ return Int.self}
给出编译器错误“Int与T不相同”.那么可以从swift函数返回类型吗?
编辑
一些解释.我有用于持久化的类(我正在使用领域),我有类作为包装在这个类周围.所有包装器都继承自RealmClassWrapper,它需要知道实际包装的Realm类.所以说我有这个领域模型:
class RealmTodo: RLMObject{ dynamic var Title = ""}
我的包装晚餐班看起来像这样:
class RealmClassWrapper{ private let backingModel: RLMObject //... func backingModelType<T>() -> T.Type{ fatalError("must be implemented") }}
和实际包装:
class Todo: RealmClassWrapper{ //some other propertIEs func backingModelType<T>() -> T.Type{ return RealmTodo.self }}解决方法 你可以返回任何你想要的类型.
func getTypeOfInt() -> Int.Type { return Int.self }func getTypeOfBool() -> Bool.Type { return Bool.self }
如果类型不是根据参数确定的,或者返回值是不变的,则不需要引入通用的T类型.
总结以上是内存溢出为你收集整理的ios – Swift:如何从函数返回类类型全部内容,希望文章能够帮你解决ios – Swift:如何从函数返回类类型所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)