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("我在工作")
}
相关推荐
Java水解13 小时前
Spring WebFlux 核心操作符详解:map、flatMap 与 Mono 常用方法
后端·spring
Java水解13 小时前
MySQL 慢查询 debug:索引没生效的三重陷阱
后端·mysql
开始了码13 小时前
关于qt运行程序点击几下未响应的原因
开发语言·qt
QT 小鲜肉13 小时前
【QT/C++】Qt样式设置之CSS知识(系统性概括)
linux·开发语言·css·c++·笔记·qt
洛克希德马丁13 小时前
Qt配置安卓开发环境
android·开发语言·qt
我要升天!13 小时前
QT-- 理解项目文件
开发语言·数据库·qt
青梅主码14 小时前
介绍一下我开发的一款新工具:函数图像绘制工具
后端
Java水解14 小时前
Spring容器初始化扩展点:ApplicationContextInitializer
后端·spring
froginwe1114 小时前
Ruby 范围(Range)
开发语言
pipip.14 小时前
Go原生高性能内存网关IMS,比Redis更快
开发语言·redis·golang