我想定义一个符合P1
的UIViewController
类型的变量。
问题:
- 我应该修改协议(protocol)还是 v1 类型?
- 我应该怎么做?
代码:
protocol P1 {
func f1();
}
var v1 : P1 //But needs to be a UIViewController which conforms to `P1`
最佳答案
在 Swift 4 中,你可以使用新的 & 符号来创建一个符合协议(protocol)和类的变量,语法如下:
let vc: UIViewController & P1
关于特定类的 Swift 协议(protocol),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35452785/