gpt4 book ai didi

go - 避免在类型转换的分支中使用类型断言

转载 作者:数据小太阳 更新时间:2023-10-29 03:21:37 25 4
gpt4 key购买 nike

我在 Go 中使用类型开关,例如以下一个:

switch question.(type) {
case interfaces.ComputedQuestion:
handleComputedQuestion(question.(interfaces.ComputedQuestion), symbols)
case interfaces.InputQuestion:
handleInputQuestion(question.(interfaces.InputQuestion), symbols)
}

有什么方法可以防止我必须先断言案例中的问题类型,然后才能将其传递给另一个函数?

最佳答案

是的,分配类型开关的结果将为您提供断言的类型

switch question := question.(type) {
case interfaces.ComputedQuestion:
handleComputedQuestion(question, symbols)
case interfaces.InputQuestion:
handleInputQuestion(question, symbols)
}

http://play.golang.org/p/qy0TPhypvp

关于go - 避免在类型转换的分支中使用类型断言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52844133/

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