Go语言的defer语句和Test功能测试函数

Go语言存在一种延迟执行的语句,有关键字defer标识,语法如下:

defer 任意语句

任意语句表示Go程序中的任何执行语句

以下是示例代码:

复制代码
package main

import "fmt"

func main() {
    defer fmt.Println("这是最后执行的语句")
    fmt.Println("这是第一个执行的语句")
    fmt.Println("这是第二个执行的语句")
}

运行结果

这是第一个执行的语句

这是第二个执行的语句

这是最后执行的语句

defer关键字会将其后面跟随的语句进行延迟处理,defer归属的函数即将返回时,将延迟处理的语句按defer出现的顺序逆序执行

相关推荐
iDao技术魔方6 分钟前
DeepSeek TUI:原生 Rust 打造的终端 AI 编码 Agent
开发语言·人工智能·rust
jghhh0115 分钟前
认知无线电中基于能量检测的双门限频谱感知的 MATLAB 仿真
开发语言·matlab
程序员小假22 分钟前
HTTP3 性能更好,为什么内网微服务依然多用 HTTP2?HTTP2 内网优势是什么?
java·后端
Mr数据杨24 分钟前
【Codex】用教案主体模块沉淀标准化教学设计内容
java·开发语言·django·codex·项目开发
wangbing112528 分钟前
踩坑:el8应用装在el9上
开发语言·后端·ruby
Andya_net1 小时前
Java | Java内存模型JMM
java·开发语言
froginwe111 小时前
SQL LIKE 操作符详解
开发语言
182******20831 小时前
2026年java后端还有机会吗?还能找到工作吗?
java·开发语言
kyriewen112 小时前
你等的Babel编译,够喝三杯咖啡了——用Rust重写的SWC,只需眨个眼
开发语言·前端·javascript·后端·性能优化·rust·前端框架
CSCN新手听安2 小时前
【Qt】Qt窗口(八)QFontDialog字体对话框,QInputDialog输入对话框的使用,小结
开发语言·c++·qt