设为首页
收藏本站
开启辅助访问
全部
问与答
创意
技术
酷工作
生活
交易
节点
飞墙
Follow
明白贴
工算小助手
登录
注册
飞社-令人惊奇的创意工作者社区-
›
首页
›
Go 编程语言
›
前端仔有点学不明白 golang 的 defer
FSHEX=FIND+SHARE+EXPRESS
飞社-令人惊奇的创意工作者社区- 是一个关于发现分享表达的地方
现在登录
没有账号?
立即注册
推荐主题
›
反对牢 A 的人到底在反对什么?
›
AI 都那么强了,传统的学校教育价值是不是
›
微信疯起来六亲不认 元宝都给封杀
›
混电车不省油也不省钱
›
分享一下我的飞牛 NAS 网络方案,我认为比
今日热议主题
把豆包输入法用的在线 ASR 接口扒了出来
谷歌发布学术插图生成工具--PaperBanana
人在苏州, 出租屋没空调, 请推荐好用的暖身
现在 AI 重构网页效率杠杠的
iphone17 省电模式桌面划动都卡
关于聊天时标点符号的讨论
🧐大家公司的产品原型是怎么样的?🤔
三星 PM963 企业级 Nvme,待机功耗居然有 6
用 Flutter 做了一个 Redis Desktop Manage
一个让 agent 间自主进行经济活动的尝试
显示全部
|
最新评论
22 条回复
·
2651 次点击
11#
NessajCN
小成
2025-4-1 17:51:26
https://go.dev/blog/defer-panic-and-recover "3. Deferred functions may read and assign to the returning function's named return values." 纯粹就是 named return 特性,死记就好了
12#
sardina
小成
2025-4-1 17:56:02
谁要在开发中这么写代码 小心被打
13#
zhengfan2016
楼主
小成
2025-4-1 18:00:55
@sardina 哈哈,我感觉你可以整理一个 awesome golang 容易挨打的代码片段,让新手村的 xdm 学习 https://i.imgur.com/agAJ0Rd.png
14#
vincentWdp
初学
2025-4-1 18:01:24
``` func foo(n int) (t int) { t = n ``` 换成 ``` func foo(n int) int { t := n ```
15#
ChrisFreeMan
小成
2025-4-1 18:01:45
@lesismal 看到你也不会我就放心了
16#
zhengfan2016
楼主
小成
2025-4-1 18:06:58
@NessajCN 原来如此
17#
sardina
小成
2025-4-1 18:07:30
第一个例子 return 是先把返回值存到临时变量里,然后 defer 再修改也改不到临时变量 第一个例子因为返回值有命名,所以 return 是把返回值存到这个命名里里,然后 defer 就可以修改了 总的来说就是 return 先设置返回值 然后再执行 defer ,然后函数返回 https://www.cnblogs.com/saryli/p/11371912.html 可以看这个
18#
peteretep
初学
2025-4-1 18:09:16
后端仔都不这么写的。不要起步就走犄角旮旯了。没有实际意义的。 这个和 c++考试 i++++ 、 ++i++ 的题目有什么区别吗? defer 只用来释放资源,其他使用正常的程序算法解决。
19#
maxwellz
小成
2025-4-1 18:14:50
@zhengfan2016 #7 貌似和 defer 的特性有关系了,这块太久没看了,忘了
20#
Liv1Dad
初学
2025-4-1 18:24:40
很简单啊,defer 放到 一个栈里面。 defer func() { t+=3}() 这个匿名函数 放入到栈中, 等 function 结束时运行。 第一个 函数返回 t, 函数结束后继续执行了 t+=3 。 第二个 函数返回 t 的值,数据结束后继续执行了 t+=3, 此时的 t 和函数返回结果 没有关系。
下一页 »
1
2
3
/ 3 页
下一页
浏览过的版块
小米
投资
Linux
奇思妙想
分享发现
职场话题
生活
返回顶部