Den*_*nis 4 swift swift-protocols
我有一个名为的协议P,我想写一个函数,它将返回符合该协议的任何类型的实例.
我写了这个:
func f<T: P>() -> T? {
// ...
}
Run Code Online (Sandbox Code Playgroud)
但是当我试着打电话时:
var fp = f()
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:Generic parameter 'T' could not be inferred.我做错了什么以及如何解决这个问题?谢谢你的帮助.
你很近.假设你有一个struct A符合P.然后您可以指定泛型参数,如下所示:
var fp: A? = f()
Run Code Online (Sandbox Code Playgroud)
没有该信息,编译器无法知道fp应该是什么类型.
| 归档时间: |
|
| 查看次数: |
1283 次 |
| 最近记录: |