【Duke】可变参数和defer 012 - PingPongGooo/GoFoundation GitHub Wiki
可变参数
func sum(ops ...int) int {
ret := 0
for _,op := range ops {
ret += op
}
return ret
}
func TestVarParam(t *testing.T){
t.Log(sum(1,2,3,4))
t.Log(sum(1,2,3,4,5))
}
defer函数
func TestDefer(t *testing.T) {
defer Clear() // Started 打印之后,Clear才会执行
t.Log("Started")
}
func TestDefer2(t *testing.T) {
defer Clear()
t.Log("Started")
panic("Fatal error") //defer 仍会执行 panic 代表程序异常中断。即便程序中断,defer里的程序依然会执行。
}
func Clear(){
fmt.Println("Clear Resopurce")
}