站长网_站长创业_站长主页_站长之家_易采站长站

会员投稿 投稿指南 站长资讯通告: go语言goto语句跳转到指定的标签实现方法
搜索:
您的位置: 主页 > 教程 > 脚本教程 > 其他脚本 > » 正文

go语言goto语句跳转到指定的标签实现方法

来源: 易采站长站

goto 语句通过标签进行代码间的无条件跳转。goto 语句可以在快速跳出循环、避免重复退出上有一定的帮助。Go 语言中使用 goto 语句能简化一些代码的实现过程。

使用 goto 集中处理错误

package main
import "fmt"
func main() {
 for x := 0; x < 10; x++ {
  for y := 0; y < 10; y++ {
   if y == 2 {
    // 跳转到标签
    goto breakHere
   }
  }
 }
 // 手动返回, 避免执行进入标签
 return
 // 标签
breakHere:
 fmt.Println("done")
}

代码说明如下:

第 8 行,使用 goto 语句跳转到指明的标签处,标签在第 23 行定义。 第 13 行,标签只能被 goto 使用,但不影响代码执行流程,此处如果不手动返回,在不满足条件时,也会执行第 16 行代码。 第 15 行,定义 breakHere 标签。

使用 goto 语句后,无须额外的变量就可以快速退出所有的循环。

统一错误处理

多处错误处理存在代码重复时是非常棘手的,例如:

err := firstCheckError()
 if err != nil {
  goto onExit
 }
 err = secondCheckError()
 if err != nil {
  goto onExit
 }
 fmt.Println("done")
 return
onExit:
 fmt.Println(err)
 exitProcess()

代码说明如下:

第 3 行和第 9 行,发生错误时,跳转错误标签 onExit。 第 17 行和第 18 行,汇总所有流程进行错误打印并退出进程。

到此这篇关于go语言goto语句跳转到指定的标签实现方法的文章就介绍到这了,更多相关go goto语句跳转内容请搜索易采站长站以前的文章或继续浏览下面的相关文章希望大家以后多多支持易采站长站!

最新图文资讯
1 2 3 4 5 6
易采站长站 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助 -