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("我在工作")
}
相关推荐
HABuo2 分钟前
【Linux进程(五)】进程地址空间深入剖析-->虚拟地址、物理地址、逻辑地址的区分
linux·运维·服务器·c语言·c++·后端·centos
编程饭碗2 分钟前
【多线程编程】
java·开发语言
vyuvyucd19 分钟前
Python虚拟环境终极指南:venv到uv进阶
开发语言·python·uv
Tim_1026 分钟前
【C++入门】05、复合类型-数组
开发语言·c++·算法
无限进步_27 分钟前
【C语言&数据结构】另一棵树的子树:递归思维的双重奏
c语言·开发语言·数据结构·c++·算法·github·visual studio
IT_陈寒29 分钟前
SpringBoot 3.x实战:5个高效开发技巧让我减少了40%重复代码
前端·人工智能·后端
佑白雪乐32 分钟前
<Python第1集>
开发语言·python
菜还不练就废了32 分钟前
26.1.12|JavaSE复盘补充,整到哪里算哪里(一)
java·开发语言
悟空码字1 小时前
三步搞定短信验证码!SpringBoot集成阿里云短信实战
java·spring boot·后端
嘉然今天吃粑粑柑1 小时前
Kafka vs RabbitMQ:从消费模型到使用场景的一次讲清
后端