【发布时间】:2016-01-18 13:23:31
【问题描述】:
我正在做这个教程http://blog.teamtreehouse.com/introduction-learn-power-swift-generics,我遇到了这段代码;
func someFunction<T, U>(a: T, b: U) {}
问题是当我调用函数时使用
someFunction<String, Int>(1, "Test")
我收到一条错误消息,提示“无法显式特化泛型函数”。
然后我把它改成
someFunction(1,b: "Test")
现在没有错误了。问题是现在没有类型安全。 (代码有什么问题吗,因为它是在 swift 2.0 之前编写的?)重新引入类型安全的最佳方法是什么?
【问题讨论】:
-
为什么你认为没有类型安全?
-
因为我可以将任何类型放入 someFunction 参数中并且没有错误?
-
能不能看看函数是怎么实现的?
-
哦,我现在看到了......所以,使用你想要的任何类型作为这个函数的参数真的很安全。
标签: swift generics swift2 type-safety