【发布时间】:2018-09-17 20:10:57
【问题描述】:
protocol Sound { func makeSound() }
extension Sound {
func makeSound() {
print("Wow")
}
}
protocol Flyable {
func fly()
}
extension Flyable {
func fly() {
print("✈️")
}
}
class Airplane: Flyable { }
class Pigeon: Sound, Flyable { }
class Penguin: Sound { }
let pigeon = Pigeon()
pigeon.fly() // prints ✈️
pigeon.makeSound() // prints Wow
上面的代码工作正常,但是我需要打印不同类型的声音(IE)。如果我打电话给 plane.fly() 它应该打印我 ("something different") 。企鹅也一样
【问题讨论】:
-
这里的缩进有点不规则。请记住,这不仅可以帮助我们理解您的代码的含义,还可以帮助我们理解您的意图,因为有时错误归结为忘记添加一些语法。请在发帖前花点时间清理一下。
-
那么“我想使用 switch”是什么意思。你的意思是switch语句?这与您的问题有何关系?
标签: swift