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("我在工作")
}
相关推荐
Never_Satisfied3 分钟前
在c#中,Jint的AsString()和ToString()的区别
服务器·开发语言·c#
Never_Satisfied3 分钟前
在c#中,获取文件的大小
java·开发语言·c#
Never_Satisfied11 分钟前
在JavaScript / HTML中,触发某个对象的click事件
开发语言·javascript·html
lly20240613 分钟前
ionic 下拉刷新:实现与优化指南
开发语言
米羊12113 分钟前
Spring 框架漏洞
开发语言·python
键盘鼓手苏苏14 分钟前
Flutter for OpenHarmony:cider 自动化版本管理与变更日志生成器(发布流程标准化的瑞士军刀) 深度解析与鸿蒙适配指南
运维·开发语言·flutter·华为·rust·自动化·harmonyos
IT 行者17 分钟前
ZeroClaw:Rust 驱动的下一代 AI Agent 基础设施
开发语言·人工智能·rust
IT 行者17 分钟前
AI Agent 平台横评:ZeroClaw vs OpenClaw vs Nanobot
开发语言·人工智能·rust
BigNiu21 分钟前
rust里mut 和遮蔽之间的区别
开发语言·rust
许同23 分钟前
JS-WPS 自动化办公(5)多Sheet整合
开发语言·前端·javascript