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("我在工作")
}
相关推荐
码事漫谈8 分钟前
OpenSpec实战:AI编程告别“瞎写”
后端
bike兔兔12 分钟前
Python实现CSV文件转Excel,一键格式转换办公小脚本
开发语言·windows·python
DyLatte19 分钟前
我做了个AI项目后才发现:会做事的人,正在输给会讲故事的人
前端·后端·程序员
XMYX-024 分钟前
goroutine 为什么没有返回值?(Go 并发核心设计思想)
开发语言·golang
三棱球25 分钟前
Java 基础教程 Day2:从数据类型到面向对象核心概念
java·开发语言
handler0126 分钟前
Linux: 基本指令知识点(3)
linux·服务器·c语言·开发语言·c++·笔记
fengci.26 分钟前
ctfshow其他(web408-web432)
android·开发语言·前端·学习·php
云深麋鹿35 分钟前
C++ | 容器list
开发语言·c++·容器·list
deviant-ART1 小时前
java stream 的 findFirst 和 findAny 踩坑点
java·开发语言·后端
Hical_W1 小时前
C++ 也能优雅写 Web?5 分钟用 Hical 搭建 REST API
开发语言·c++·github