我试图在Swift中做以下的事情:
protocol ProtocolWithAlias { typealias T } protocol AnotherProtocol { func someFunc() -> ProtocolWithAlias }
但是我收到错误:协议’ProtocolWithAlias’只能用作通用约束,因为它具有自身或相关类型的要求。
有可能做这样的事情吗?错误信息(或至少“仅用作通用约束”部分)对我来说似乎没有什么意义。
我正在使用最新的Xcode 6 beta 3。
谢谢!
尝试这个:
func someFunc<T:ProtocolWithAlias>() -> T