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("我在工作")
}
相关推荐
卷无止境8 分钟前
FastAPI 前端托管全攻略:从静态文件到大型全栈项目架构
后端·python
webmote3310 分钟前
用 NVIDIA Nemotron 3 Super + .NET 构建有记忆的多轮对话
后端·算法
神奇小汤圆15 分钟前
JUC三大常用工具类CountDownLatch、CyclicBarrier、Semaphore
后端
卷无止境35 分钟前
当FastAPI项目开始"膨胀",代码该往哪儿放
后端·python
fliter36 分钟前
程序员每天能省 1 小时的 50 个 macOS/终端/Git/浏览器技巧
后端
神奇小汤圆41 分钟前
Redis为什么使用哈希槽而不用一致性哈希
后端
用户8356290780511 小时前
Python设置PowerPoint幻灯片背景的方法
后端·python
站大爷IP1 小时前
Python 的 is 把我坑惨了,原来 == 和 is 在小整数池外完全是两码事
后端
用户40966601317511 小时前
Jackson 序列化:@JsonIgnore / @JsonProperty / @JsonFormat / @JsonInclude / @JsonUnwrapped 一次讲清楚
java·后端
雨落倾城夏未凉1 小时前
halcon核心-图像预处理(四)
后端