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 分钟前
Python基础入门(二)
linux·服务器·开发语言·python
柠檬味的Cat8 分钟前
零基础搭建WordPress网站完整流程
后端·php
代龙涛21 分钟前
wordpress块主题
开发语言·后端·php
禾味26 分钟前
过程即奖励|前端转后端经验分享
前端·后端·面试
毕设源码-赖学姐1 小时前
【开题答辩全过程】以 基于java电脑售后服务管理系统设计为例,包含答辩的问题和答案
java·开发语言
jipeng59941 小时前
(在项目中学习技术)完成使用swoole完成App二维码扫码登录网页端的操作
后端·php
掘金者阿豪1 小时前
Maven打包血泪史:当你的IDEA路径里藏了个空格,整个宇宙都与你为敌
后端
山水洛行1 小时前
基于 vLLM、Tavily 和 Arize Phoenix 构建本地 LLM 可观测性技术栈
后端
初次攀爬者1 小时前
力扣解题-无重复字符的最长子串
后端·算法·leetcode
不敲代码的攻城狮1 小时前
用 Spring StopWatch 做方法级别耗时统计 + 支持回调写法 + 自动打印日志
后端