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

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

defer 任意语句

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

以下是示例代码:

复制代码
package main

import "fmt"

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

运行结果

这是第一个执行的语句

这是第二个执行的语句

这是最后执行的语句

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

相关推荐
程序员海军7 小时前
用了两年多 GPT,我最近开始换模型了,还折腾了个求职避坑 Agent
前端·人工智能·后端
码士集团小青7 小时前
SpringBoot 集成缓存性能之王 Caffeine
spring boot·后端·缓存
紧跟先前的步伐8 小时前
Go AI Agent 实战 06|JSON 结构化输出与 Go 后端校验
人工智能·ai·golang
H.莓飛9 小时前
【数据结构】排序_OJ题(一):计数、桶与排序后的处理
java·开发语言·数据结构
wangchunyu1149 小时前
JAVA AQS与Lock实现原理(含CAS)
java·开发语言·word
excel9 小时前
IndexNow:让搜索引擎更快发现网站更新的主动通知协议
前端·后端·架构
Json____10 小时前
用 FastAPI + Vue3 打造一套完整的在线考试系统:从组卷到阅卷的业务闭环实践
后端·node.js·fastapi·it学习·wwwoop.com
爱喝水的鱼丶10 小时前
SAP-ABAP:ECC→S/4HANA ABAP 迁移升级指南——程序改造、语法兼容与性能优化 导语
运维·开发语言·性能优化·sap·abap·经验交流·开发交流
小灰灰搞电子11 小时前
Rust+Slint 实现FTP客户端调试助手源码分享
开发语言·后端·rust
外收内放11 小时前
面向对象高级(实战案例)
开发语言·python·学习