一. 可变参数函数
- Go语言支持可变参数函数
- 可变参数指调用参数时,参数的个数可以是任意个
可变参数必须在参数列表最后的位置,在参数名和类型之间添加三个点表示可变参数函数
func 函数(参数,参数,名称 ... 类型 ){
//函数体
}
输出语句就是可变参数函数,源码如下
func Println(a ...interface{}) (n int, err error) {
return Fprintln(os.Stdout, a...)
}
声明函数时,在函数体把可变参数当作切片使用即可
二.代码示例
- 声明可变参数声明与调用 ```go func main() { demo(“看书”, “写代码”, “看佳明哥视频”) }
func demo(hover … string) { for a, b := range hover { fmt.Println(a, b) } }
- 可变参数必须存在其他参数后面,一个函数不能有多个可变参数.
- 因为前面普通参数个数是确定的,编译器知道,哪个实参给哪个形参
```go
func main() {
demo("张三", "看书", "写代码", "看佳明哥视频")
}
func demo(name string, hover ... string) {
fmt.Println(name, "的爱好是")
for a, b := range hover {
fmt.Println(a, b)
}
}