Swift,在另一个泛型函数中调用泛型函数
我是Swift的新手(来自爪哇)。当我试图从另一个泛型函数调用泛型函数时,我感到非常头痛。更具体地说,我收到了标准错误消息:“无法推断通用参数T”。Swift,在另一个泛型函数中调用泛型函数,swift,generics,Swift,Generics,我是Swift的新手(来自爪哇)。当我试图从另一个泛型函数调用泛型函数时,我感到非常头痛。更具体地说,我收到了标准错误消息:“无法推断通用参数T”。 我假设我可能不知道一些语言细节,因此希望有人能给我一个解决方案,即如何更正此代码以使其正常工作: //Second parameter is workaround for error no generic parameter in function signature func performRequest<T>(request
我假设我可能不知道一些语言细节,因此希望有人能给我一个解决方案,即如何更正此代码以使其正常工作:
//Second parameter is workaround for error no generic parameter in function signature
func performRequest<T>(request: Request, stub: T?) -> Int {
let result: T? = requestExecutor.execute(request)
return request.getId()
}
//第二个参数是解决函数签名中没有泛型参数的错误的方法
函数性能请求(请求:请求,存根:T?->Int{
让结果:T?=requestExecutor.execute(请求)
返回请求。getId()
}
我已经花了相当多的时间在谷歌上寻找解决方案,但什么也没找到。我也试着用T.Type代替T?在参数中,但没有运气。我在xCode 7.3.1中使用Swift 2.2.1。对不起,我是个白痴。感谢Sulthan的评论,我期待我的RequestExecutor的实现,我已经意识到它的执行对泛型有约束,即
func execute<T: Mappable>(request: Request) ...
func执行(请求:请求)。。。
在我原来的职位上的职能转变为
func performRequest<T: Mappable>(request: Request, stub: T?) -> Int...
func performRequest(请求:请求,存根:T?)->Int。。。
一切正常。再一次抱歉,我正在集中精力于代码的另一部分。感谢苏丹让我走上正轨。
希望这个答案能对其他人有所帮助:)对不起,我是个白痴。感谢Sulthan的评论,我期待我的RequestExecutor的实现,我已经意识到它的执行对泛型有约束,即
func execute<T: Mappable>(request: Request) ...
func执行(请求:请求)。。。
在我原来的职位上的职能转变为
func performRequest<T: Mappable>(request: Request, stub: T?) -> Int...
func performRequest(请求:请求,存根:T?)->Int。。。
一切正常。再一次抱歉,我正在集中精力于代码的另一部分。感谢苏丹让我走上正轨。
希望这个答案能对其他人有所帮助:)你能提供一个完整的例子吗?你能提供一个完整的例子吗?