Slide 23
Slide 23 text
Go: errorを返す
● 例外機構は無い
● 明示的にerrorを返す
○ 正常終了ならnil
● 複数戻り値を利用
○ 慣例的にerrorは最後
例外を返しうるメソッドすべての
戻り値にerrorを追加していく
func div(a, b int) (int, error) {
if b == 0 {
return 0, errors.New("zero division")
}
return a / b, nil
}
...
avg, err = div(sum, count)
if err != nil {
// 何か処理
}