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("我在工作")
}
相关推荐
froginwe114 分钟前
传输对象模式(Object Transfer Pattern)
开发语言
上进小菜猪13 分钟前
基于 YOLOv8 的高压输电线路(绝缘子、电缆)故障自动识别 [目标检测完整源码]
后端
qq_4061761413 分钟前
深入理解 JavaScript 闭包:从原理到实战避坑
开发语言·前端·javascript
float_六七19 分钟前
JavaScript变量声明:var的奥秘
开发语言·前端·javascript
1candobetter19 分钟前
JAVA后端开发——深入理解 Java Static
java·开发语言
FuckPatience26 分钟前
C# SqlSugar+SQLite: 无法加载 DLL“e_sqlite3”: 找不到指定的模块
开发语言·c#
清水白石00827 分钟前
深入理解 Python 字典的有序性:从 3.6 的“意外之喜”到 3.7 的官方承诺
开发语言·python
白露与泡影28 分钟前
Spring事件机制完全指南:解耦利器与实战
java·后端·spring
陈随易38 分钟前
聊一聊2025年用AI的思考与总结
前端·后端·程序员
写代码的【黑咖啡】42 分钟前
Python 中的 Requests 库:轻松进行 HTTP 请求
开发语言·python·http