Golang中的四个括号

代码如下,首先第一个括号内容为wk *worker表示这个函数是一个方法,属于结构体worker的方法,第二个括号内容为say string,是方法的参数,第三个括号内容err error是方法的返回值,第四个括号是work方法内部的匿名函数结尾处的括号内容为"匿名函数调用自己",表示用该参数调用所属的匿名方法

go 复制代码
package main

type worker struct {
	id int
}

func (wk *worker) work(say string) (err error) {
	func(s string) {
		println(s)
		println(wk.id)
		println(say)
	}("匿名函数调用自己")
	panic("worker panic..")
	return err
}

func main() {
	aWorker := worker{id: 1}
	aWorker.work("我在工作")
}
相关推荐
kfaino4 小时前
码农的AI翻身(五)你好,我叫 Transformer
后端·aigc
Oneslide9 小时前
机械革命 单系统纯净重装Ubuntu(全盘覆盖,清空原有Windows)
后端
GetcharZp9 小时前
告别OOM!用Go+libvips实现30000×50000超大图片的流式瓦片服务
后端·go
IT_陈寒10 小时前
JavaScript项目实战经验分享
前端·人工智能·后端
用户479492835691511 小时前
6w star,GitHub 趋势第一的 Ponytail,这个agent插件到底在火什么
前端·后端
神奇小汤圆12 小时前
2026一线大厂Java八股文精选(附答案,高质量整理)
后端
Warson_L13 小时前
LangGraph入门学习资料
后端
神奇小汤圆13 小时前
Spring Boot → Solon 注解迁移实战指南:一张对照表说清楚
后端
kfaino13 小时前
码农的AI翻身(四)你好,我叫 Attention
人工智能·后端
lwx5728013 小时前
探秘InnoDB:搞懂它的内存、线程、磁盘与日志刷盘策略
java·后端