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("我在工作")
}
相关推荐
糯米导航5 分钟前
Rust + ONNX Runtime 构建生产级 AI 推理服务:从零到压测
开发语言·人工智能·rust
阿pin17 分钟前
Java随笔-ConcurrentHashMap
java·开发语言·哈希算法
秋田君25 分钟前
QT_QT布局详解
开发语言·数据库·qt
ximen502_28 分钟前
Python 语言知识总结
开发语言·python
m0_7381207236 分钟前
PHP代码审计基础——超全局变量(三)
开发语言·安全·网络安全·php
烟锁池塘柳042 分钟前
【C/C++】解决C++控制台输出中文乱码问题
c语言·开发语言·c++
C+-C资深大佬1 小时前
Java 变量:从入门到精通
java·开发语言·python
辞旧 lekkk1 小时前
【Qt系统相关】鼠标事件
linux·开发语言·qt·学习·计算机外设·萌新
她说彩礼65万1 小时前
Asp.net core返回类型总结
后端·asp.net
chouchuang1 小时前
day-027-面向对象-下
开发语言·python