终止语句

Golang 的终止语句

终止语句

https://golang.org/ref/spec#Terminating_statements

终止语句可以防止执行同一块中在它之后出现的所有词法上的语句。以下语句是终止语句。

  1. “return “或 “goto “语句。
  2. 对内置函数panic的调用。
  3. 语句列表以终止语句结束的块。
  4. “if “语句,其中
    • “else “分支存在,并且
    • 两个分支都是终止语句。
  5. “for “语句,其中。
    • 没有指向 “for “语句的 “break “语句,并且:
    • 循环条件不存在。
  6. “switch “语句,其中。
    • 没有 “break “语句指的是 “switch “语句。
    • 有一个default case,和
    • 语句列表中的每一种情况,包括默认情况,都以终止语句结束,或可能标有 “fallthrough"语句。
  7. “select"语句,其中:
    • 没有指向 “select “语句的 “break “语句,并且:
    • 在每种情况下,包括默认情况下的语句列表,都以终止语句结束。
  8. 标签语句标注一个终止语句。

所有其他语句都不是终止语句。

如果语句列表不是空的,并且它的最后一条非空语句是终止语句,则该语句列表以终止语句结束。