【发布时间】:2016-08-25 20:40:09
【问题描述】:
考虑这个典型的例子,有时会在教程等中看到 (even in Apple's code):
protocol Nameable {
var name: String {get}
}
struct Person : Nameable {
var name: String
}
我的问题是,这种模式有什么好处?一旦将函数添加到协议中,我就可以理解它,但是对于只有一个或多个变量的协议,什么可能是一个好的应用程序?为什么不将 name 添加到每个 struct 和 class ?
【问题讨论】:
-
多态非常有用。您可以在不知道其实际类型的情况下使用对象。
-
@Francescu 你能详细说明一下吗?