gpt4 book ai didi

loops - 摆脱无用的返回语句

转载 作者:IT王子 更新时间:2023-10-29 00:36:08 24 4
gpt4 key购买 nike

我正在尝试重构一些代码并使其更易于阅读。我注意到在某些函数的末尾有一些不必要的返回语句。这是一个概念性示例:

func someFunction(a []arr) int {
for _,v := range a {
if v == something {
// will defenitly get here at some point!
return somethingElse
}
}
return -1 // never ever happens!
}

在我看来,函数末尾的 return 语句具有误导性,因为它暗示可能会在某个时间点到达。我该如何预防?

请注意,我在其他地方进行错误处理,这就是为什么我可以确定 someFunction 将始终返回 somethingElse 的原因。

最佳答案

panic 而不是在函数结束时返回假值:

func someFunction(a []arr) int {
for _,v := range a {
if v == something {
// will defenitly get here at some point!
return somethingElse
}
}

panic("unreachable")
}

这是 standard library 中的常见模式.

关于loops - 摆脱无用的返回语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49554740/

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