defer用途



package main

/*
defer :程序退出时执行,先进后执行
defer庸碌:
1、关闭文件句柄
2.锁资源释放
3.数据库连接释放
*/
import (
    "fmt"
)

func main() {
    i := 0
    defer fmt.Println(i) // 先进后执行
    defer fmt.Println("record")
    i = i + 10
    fmt.Println("start!")
    res := niming(1, 12)
    fmt.Println(res)
}

func niming(a, b int) int {
    result := func(a, b int) int {
        return a + b
    }
    return result(a, b)
}

/*
start!
13
record
0
*/

// func read() {
//  r := "../test.go"
//  v := open(r)
//  defer v.close()
// }

猜你喜欢

转载自www.cnblogs.com/lajiao/p/10527469.html