「Go言語」defer文で引数の即時評価サンプル
書式
defer 処理コード
defer文は、上位ブロックの関数がreturnするまで関数の実行を遅延させます。
使用例
package main
import "fmt"
func main() {
n := 15
defer fmt.Printf("1回目のnの値: %d\n",n)
n++
fmt.Printf("2回目のnの値: %d\n",n)
}
package main
import "fmt"
func main() {
n := 15
defer fmt.Printf("1回目のnの値: %d\n",n)
n++
fmt.Printf("2回目のnの値: %d\n",n)
}
package main import "fmt" func main() { n := 15 defer fmt.Printf("1回目のnの値: %d\n",n) n++ fmt.Printf("2回目のnの値: %d\n",n) }
実行結果
2回目のnの値: 16
1回目のnの値: 15