2025/02/12
That defer statements are block-scoped:
package main
import "fmt"
func main() {
defer fmt.Println("end func") // runs at end of function
fmt.Println("start func")
{
defer fmt.Println("end block") // runs at end of block
fmt.Println("start block")
}
}
// Output:
// start func
// statt block
// end block
// end func