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

相关推荐
卷毛的技术笔记几秒前
从“拆东墙补西墙”到“最终一致”:分布式事务在Spring Boot/Cloud中的破局之道
java·spring boot·分布式·后端·spring cloud·面试·rocketmq
Ulyanov12 分钟前
《玩转QT Designer Studio:从设计到实战》 QT Designer Studio数据绑定与表达式系统深度解析
开发语言·python·qt
袋鱼不重31 分钟前
Hermes Agent 直连飞书机器人
前端·后端·ai编程
Pkmer39 分钟前
古法编程: 深度解析Java调度器Timer
java·后端
小强198843 分钟前
C++23/26新特性解析:那些让你放弃Boost库的杀手锏
后端
Aolith1 小时前
学 Express 被 app.use 绕晕了?用流水线思维一次性搞懂 5 种中间件
后端·express
BduL OWED1 小时前
将 vue3 项目打包后部署在 springboot 项目运行
java·spring boot·后端
二月龙1 小时前
从C++到WebAssembly:让高并发计算跑在浏览器里
后端
ZJY1321 小时前
3-12:路由和重构
后端·node.js
掘金者阿豪1 小时前
我用 Codex Rule 模式“驯服AI写代码”:从翻车到稳定上线的完整实践(附企业级规则模板 + 架构图)
后端