我想我几乎明白什么是静态或动态调度。
据我所知,具有struct 类型的struct instance将始终为static dispatch。
struct A {
func yo() {
print("A")
}
}
var a: A = A()
a.yo()
但是,具有协议类型(使用协议方法)的结构实例将在不使用协议和扩展的情况下进行动态调度。
protocol Foo {
func yo()
}
struct A: Foo {
func yo() {
print("A")
}
}
var a: Foo = A()
a.yo()
所以,我只是想知道“结构类型 可以动态调度吗?” 如果愿意,你能告诉我一些例子吗?⬇️ ?? 是任何事例
var a: structType = ??
a.yo()