您好,登錄后才能下訂單哦!
defer先進后出
舉例:
package main
import (
"fmt"
"os"
"bufio"
)
//打開文件
func writeFile(filename string) {
file, err := os.Create(filename)
if err != nil {
panic(err)
}
//往文件寫內容(直接寫文件會比較慢,所以這里用bufio。先寫到內存里,再內存一下寫進去會比較快)
writer := bufio.NewWriter(file)
for i := 0; i < 20; i++ {
fmt.Fprintln(writer, i)
}
defer file.Close()
defer writer.Flush()
}
func main() {
//tryDefer()
writeFile("haha.txt")
}
先執行writer.Flush(),再執行file.Close()。反之不能寫入
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。