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("我在工作")
}
相关推荐
C++ 老炮儿的技术栈4 小时前
用密码学安全随机数生成256位密钥
c语言·开发语言·c++·windows·安全·密码学·visual studio
z***43844 小时前
java与mysql连接 使用mysql-connector-java连接msql
java·开发语言·mysql
道路与代码之旅4 小时前
“变量也能是函数?——论 Kotlin 中那些会说话的变量,以及它们如何让代码少说废话”
android·开发语言·kotlin
白露与泡影4 小时前
大厂Java面试前复习的正确姿势(800+面试题附答案解析)
java·开发语言·面试
N***p3654 小时前
Springboot项目中线程池使用整理
java·spring boot·后端
程序定小飞4 小时前
基于SpringBoot+Vue的常规应急物资管理系统的设计与实现
java·开发语言·vue.js·spring boot·后端·spring
R***z1014 小时前
Spring容器初始化扩展点:ApplicationContextInitializer
java·后端·spring
tgethe4 小时前
Lambda表达式
java·后端
8***29314 小时前
Go环境搭建(vscode调试)
开发语言·vscode·golang
songgz4 小时前
双向流式 JSON 解析架构:并行优化大型文件处理
java·开发语言·json