gpt4 book ai didi

ios - 直接调用 Swift 枚举实例方法会创建实例吗?

转载 作者:可可西里 更新时间:2023-11-01 01:05:11 25 4
gpt4 key购买 nike

假设我有一个枚举,例如:

enum AnimalType {
case Dog
case Cat

func barks() -> Bool {
switch self {
case Dog:
return true
case Cat:
return false
}
}
}

如果我要这样做的话:

func pickAnimal(shouldBark: Bool) {

switch shouldBark {

case AnimalType.Dog.barks():
println("you should pick dogs")

case AnimalType.Cat.barks():
println("you should pick cats")

default:
println("don't pick cats or dogs")
}
}

是否调用 AnimalType.Dog.barks()AnimalType.Cat.barks() 实例化一个 AnimalType

最佳答案

是的,在那些示例中,AnimalType.Dog.barks() 实例化了一个 AnimalType

毕竟,barks() 是一个实例方法。它不能被实例调用。

实例的生命周期会很短。只要足够长的时间来调用 barks() 方法,就是这样。

关于ios - 直接调用 Swift 枚举实例方法会创建实例吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32462039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com