Go入门笔记-18 defer使用

1、EdgeX中的代码片段

 

 2、defer是什么

在golang当中,defer代码块会在函数调用链表中增加一个函数调用。这个函数调用不是普通的函数调用,而是会在函数正常返回,也就是return之后添加一个函数调用。因此,defer通常用来释放函数内部变量。感觉和面向对象界面编程中的OnDestoryed之类的事件相似。

3、示例

package main

import "fmt"

func testdefer() int {
	i := 0
	defer fmt.Printf("defer-%d
", i)
	i++
	fmt.Printf("before return
")
	return i
}
func main() {
	fmt.Println(testdefer())
}

4、运行结果

before return
defer-0
1

  

  

本博客是个人工作中记录,遇到问题可以互相探讨,没有遇到的问题可能没有时间去特意研究,勿扰。
另外建了几个QQ技术群:
2、全栈技术群:616945527,加群口令abc123
2、硬件嵌入式开发: 75764412
3、Go语言交流群:9924600

闲置域名www.nsxz.com出售(等宽等高字符四字域名)。
原文地址:https://www.cnblogs.com/zhaogaojian/p/15137969.html