Go 自学:defer关键字

我们可以使用defer关键字延迟代码的执行,相当于我们把代码放入一个stack中,遵循last in first out的原则输出代码。

go 复制代码
package main

import (
	"fmt"
)

func myDefer() {
	for i := 0; i < 5; i++ {
		defer fmt.Print(i)
	}
}

func main() {
	defer fmt.Println("World")
	defer fmt.Println("One")
	defer fmt.Println("Two")
	fmt.Println("Hello")
	myDefer()
}

代码输出为:

Hello

43210Two

One

World

相关推荐
sjmaysee几秒前
Java框架SpringBoot(一)
java·开发语言·spring boot
azhou的代码园1 分钟前
基于SpringBoot+微信小程序的图片识别科普系统
spring boot·后端·微信小程序
寒秋花开曾相惜3 分钟前
(学习笔记)3.8 指针运算(3.8.3 嵌套的数组& 3.8.4 定长数组)
java·开发语言·笔记·学习·算法
想唱rap10 分钟前
Linux线程
java·linux·运维·服务器·开发语言·mysql
Tony Bai29 分钟前
Rust 看了流泪,AI 看了沉默:扒开 Go 泛型最让你抓狂的“残疾”类型推断
开发语言·人工智能·后端·golang·rust
njidf32 分钟前
C++与Qt图形开发
开发语言·c++·算法
用户31673613034236 分钟前
javaLangchain4j从官方文档入手,看他做了什么——具体使用(二)
后端
無名路人38 分钟前
Zsh 脚本 + VS Code 任务:NestJS + Vue3 一键部署到 1Panel
运维·后端·自动化运维
qwehjk200838 分钟前
代码动态生成技术
开发语言·c++·算法
是翔仔呐41 分钟前
第11章 显示外设驱动:I2C协议OLED屏、SPI协议LCD屏字符/图片/中文显示
c语言·开发语言·stm32·单片机·嵌入式硬件·学习·gitee