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("我在工作")
}
相关推荐
canonical_entropy9 小时前
AI时代,我们还需要低代码吗?—— 一场关于模型、演化与软件未来的深度问答
后端·低代码·aigc
颜如玉9 小时前
HikariCP:Dead code elimination优化
后端·性能优化·源码
考虑考虑10 小时前
Jpa使用union all
java·spring boot·后端
bobz96511 小时前
virtio vs vfio
后端
Rexi11 小时前
“Controller→Service→DAO”三层架构
后端
bobz96512 小时前
计算虚拟化的设计
后端
深圳蔓延科技12 小时前
Kafka的高性能之路
后端·kafka
Barcke12 小时前
深入浅出 Spring WebFlux:从核心原理到深度实战
后端
JuiceFS12 小时前
从 MLPerf Storage v2.0 看 AI 训练中的存储性能与扩展能力
运维·后端
大鸡腿同学12 小时前
Think with a farmer's mindset
后端