Data Base/Go
[Golang] defer
์ฝ๋ฉํ๋ ๋ถ์ด
2021. 11. 1. 15:06
๋ฐ์ํ
defer๋ฌธ์ ์์ ์ ๋๋ฌ์ผ ํจ์๊ฐ ์ข ๋ฃํ ๋๊น์ง ์ด๋ ํ ํจ์์ ์คํ์ ์ฐ๊ธฐํ๋ค.
์ฐ๊ธฐ๋ ํธ์ถ์ ์ธ์๋ ์ฆ์ ํ๊ฐ๋์ง๋ง, ๊ทธ ํจ์ ํธ์ถ์ ์์ ์ ๋๋ฌ์ผ ํจ์๊ฐ ์ข ๋ฃํ ๋๊น์ง ์ํ๋์ง ์๋๋ค.
์์
package main
import "fmt"
func main() {
defer fmt.Println("world")
fmt.Println("hello")
}
์ฐ๊ธฐ๋ ํจ์ ํธ์ถ๋ค์ ์คํ์ ์์ธ๋ค.
ํ ํจ์๊ฐ ์ข ๋ฃ๋ ๋ ๊ทธ๊ฒ์ ์ฐ๊ธฐ๋ ํจ์๋ค์ ํ์ ์ ์ถ ์์๋ก ์ํ๋๋ค.
์์
package main
import "fmt"
func main() {
fmt.Println("counting")
for i := 0; i < 10; i++ {
defer fmt.Println(i)
}
fmt.Println("done")
}
[์ฐธ๊ณ ์ฌ์ดํธ - a Tour of Go]
๋ฐ์ํ