2、go Defer
package main
import (
"fmt"
"os"
)
func main() {
f:=createFile("D:\\webfront\\defer.txt")
defer closeFile(f)
writeFile(f)
}
func createFile(p string) *os.File{
fmt.Println("creating")
f,err :=os.Create(p)
if err!=nil {
panic(err)
}
return f
}
func writeFile(f *os.File){
fmt.Println("writing")
fmt.Fprintln(f,"data")
}
func closeFile(f *os.File){
fmt.Println("closing")
f.Close()
}
凡事往简单处想,往认真处行