当前位置: 首页 > news >正文

泉州野外拓展网站建设游戏类网页设计

泉州野外拓展网站建设,游戏类网页设计,江苏专业网站建设费用,最简单的做网站一、Go 返回参数命名 在Golang中,命名返回参数通常称为命名参数。 Golang允许在函数签名或定义中为函数的返回或结果参数指定名称。或者可以说这是函数定义中返回变量的显式命名。基本上,它解决了在return语句中提及变量名称的要求。 通过使用命名返回参…

一、Go 返回参数命名

在Golang中,命名返回参数通常称为命名参数。

  • Golang允许在函数签名或定义中为函数的返回或结果参数指定名称。或者可以说这是函数定义中返回变量的显式命名。基本上,它解决了在return语句中提及变量名称的要求。 通过使用命名返回参数或命名参数,只能在函数末尾使用return关键字将结果返回给调用方。

  • 当函数必须返回多个值时,通常使用此概念。 因此,为了使用户感到舒适并增强代码的可读性,Golang提供了此功能。

1、声明命名的返回参数

package mainimport "fmt"// Main Method
func main() {//在这里调用函数//函数返回两个值m, d := calculator(105, 7)fmt.Println("105 x 7 = ", m)fmt.Println("105 / 7 = ", d)
}// 具有命名参数的函数
func calculator(a, b int) (mul int, div int) {//在这里,简单的赋值就可以//并初始化它的值mul = a * bdiv = a / b//这里有return关键字//没有任何结果参数return
}

输出:
105 x 7 = 735
105 / 7 = 15

2、重要事项

2.1、公共命名参数类型的函数

如果所有命名的返回参数的类型是公共的或相同的,则可以指定公共数据类型。将下面的代码与上面阅读的示例进行比较,以便更好地理解。

//有命名参数的函数
func calculator(a, b int) (mul, div int) {

此处,mul和div变量均为int类型。因此,您还可以声明具有通用数据类型的命名参数,例如函数变量(即a和b)

2.2、增加可读性

使用命名返回参数将增强代码的可读性,因为只需读取函数签名就可以知道返回参数。

2.3、使用“裸返”

使用命名的返回参数后,return语句通常称为"裸返"。
如下的return

func calculator(a, b int) (mul int, div int) {//在这里,简单的赋值就可以//并初始化它的值mul = a * bdiv = a / b//这里有return关键字//没有任何结果参数return
}

2.4、返回变量默认零值

默认情况下,Golang用零值定义所有命名变量,函数将能够使用它们。如果函数未修改值,则将自动返回零值

2.5、不要重复赋值

如果您将使用短声明运算符(:=)初始化命名的返回参数,则将给出错误,因为它们已被Go编译器初始化。因此,您可以使用简单的赋值方式(=)将值分配给命名的返回参数。

//具有命名参数的函数
func calculator(a, b int) (mul int, div int) {//在这里,它将抛出一个错误//因为已经定义了参数//在函数签名中mul := a * bdiv := a / b//这里有return关键字//没有任何结果参数return
}

编译都不通过,goland中直接爆红

二、裸返 应用场景

1、与defer使用

1.1、错误示例

下面代码返回什么?
知识点:goland中return不是一个原子操作

package mainimport "fmt"func test01() (result int) {defer func() {result++}()return 0
}func main() {fmt.Println(test01())
}

输出结果:
1

1.2、正确示例

func f() (result int) {result = 0  //return语句不是一条原子调用,return xxx其实是赋值+ret指令func() { //defer被插入到return之前执行,也就是赋返回值和ret指令之间result++}()return
}

输出结果:
1

http://www.yayakq.cn/news/699916/

相关文章:

  • 网站开发工具设备要求用fullpage做的网站
  • 自动生成ui界面南京seo顾问
  • 易名网站备案广州企业所得税怎么征收
  • 决定网站打开的速度天津建站费用
  • 传统文化传播公司网站建设贵阳网站设计阳光创信好吗
  • 精品课程网站的设计与建设要求互联网服务平台是什么
  • 广州南沙区建设和交通局网站asp网站后台不能编辑
  • 如何在局域网建立网站wordpress安装完无法登录
  • 电商网站建设 数商云郴州吧百度贴吧
  • 全国好的深圳网站设计北京有什么网上推广的网站吗
  • 淄博周村学校网站建设定制正规网站建设团队是什么
  • 河北建设厅查询网站wordpress批量生成文章
  • 自己做网站排名好吗浙江高端网站建设
  • 佛山网站建设找方维网络北京seo技术交流
  • h5页面和小程序的页面有什么区别微软优化大师
  • hostgator wordpress主机安徽网络推广和优化
  • 网站建设那里网站换主机
  • 帝国网站管理系统安装教程微信公众平台申请小程序
  • 网站搜索系统店面设计费计入什么科目
  • 企业网站建立平台在线制作电子公章免费
  • 丰台网站制作公司网站开发相关书籍
  • 蓝色网站配色方案帝国网站采集管理怎么做
  • 品牌网站建设k小蝌蚪hulu网站在中国做内容吗
  • 莲湖免费做网站wordpress怎么自己写代码
  • 现在门户网站建设还有人弄吗成都网站制作公司电话
  • 国家建设材料检测网站wordpress 帝国 seo
  • 商务网站的推广东莞有哪些大公司
  • 网站程序源码一个网站有多少网页
  • 郑州妇科医院正规有哪些网站建设布局利于优化
  • 顺德网站建设要多少钱网络维护实践报告3000