English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang 基礎チュートリアル

Golang 控制文

Golang 函数 & メソッド

Golang 構造体

Golang スライス & 配列

Golang 文字列(String)

Golang ポインタ

Golang インターフェース

Golang 并行

Golang 異常(Error)

Golang その他の雑多

Go 言語のRecover(復旧)

リカバリは、緊急またはエラー状況からプログラムのコントロールを取り戻すために使用されます。それにより、終了シーケンスを停止し、通常の実行に戻ります。遅延関数から呼び出されます。panicで渡されたエラーワーを検索します。通常、それはnil、他の効果はありません。

Go recover()の例

package main
import (
   "fmt"
)
func main() {
   fmt.Println(SaveDivide(10, 0))
   fmt.Println(SaveDivide(10, 10))
}
func SaveDivide(num1, num2 int) int {
   defer func() {
      fmt.Println(recover())
   }()
   quotient := num1 / num2
   return quotient
}

出力:

ランタイムエラー:整数で0で割る
0
<nil>
1