golang中...是什么意思?


本文摘自php中文网,作者青灯夜游,侵删。

golang中...是什么意思?

在golang中,三个点“...”其实是go的一种语法糖(糖衣语法)。

语法糖(Syntactic sugar)也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。

“…”的用法:

● 第一个用法主要是用于函数有多个不定参数的情况,表示为可变参数,可以接受任意个数但相同类型的参数。

● 第二个用法是slice可以被打散进行传递。

下面直接上例子:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

func test1(args ...string) { //可以接受任意个string参数

    for _, v:= range args{

        fmt.Println(v)

    }

}

func main(){

var strss= []string{

        "qwr",

        "234",

        "yui",

        "cvbc",

    }

    test1(strss...) //切片被打散传入

}

结果:

1

2

3

4

qwr

234

yui

cvbc

其中strss切片内部的元素数量可以是任意个,test1函数都能够接受。

阅读剩余部分

相关阅读 >>

海康/大华sdk协议easycvr如何通过go语言读取csv文件内容?

使用bklexer进行词法分析

go的切片(进阶版)

为什么go语言适合开发网游服务器端

【发布了go-carbon1.1.1版本】完善对主流orm的支持,新增公共方法

go module 12

go 使用pprof 排查内存泄露

难以遏制的人因差错 -go 的日志工具之痛

手撸golang go与微服务 net.rpc之2

jack liu's golang personal summary notes

更多相关阅读请进入《golang》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...