defer 关键字可以用来包裹一段代码,这个代码块将会在当前作用域结束的时候被调用。这通常被用来对当前的代码进行一些清理工作,比如关闭打开文件等。
可以在同一个作用域中指定多个 defer 代码块,在当前作用域结束时,它们会以相反的顺序被调用,即先定义的后执行,后定义的先执行。
例如:
1 | openFile() |
这段代码的作用域结束的时候,第二个 defer 块将首先被调用,其次再调用第一个 defer 块。
defer 关键字可以用来包裹一段代码,这个代码块将会在当前作用域结束的时候被调用。这通常被用来对当前的代码进行一些清理工作,比如关闭打开文件等。
可以在同一个作用域中指定多个 defer 代码块,在当前作用域结束时,它们会以相反的顺序被调用,即先定义的后执行,后定义的先执行。
例如:
1 | openFile() |
这段代码的作用域结束的时候,第二个 defer 块将首先被调用,其次再调用第一个 defer 块。