函数使用的注意事项和细节讨论
1) 函数的形参列表可以是多个,返回值列表也可以是多个。
2) 形参列表和返回值列表的数据类型可以是值类型和引用类型。
3) 函数的命名遵循标识符命名规范,首字母不能是数字,首字母大写该函数可以被本包文件和其 它包文件使用,类似 public , 首字母小写,只能被本包文件使用,其它包文件不能使用,类似 private
4) 函数中的变量是局部的,函数外不生效【案例说明】
5) 基本数据类型和数组默认都是值传递的,即进行值拷贝。在函数内修改,不会影响到原来的值。
6) 如果希望函数内的变量能修改函数外的变量(指的是默认以值传递的方式的数据类型),可以传 入变量的地址&,函数内以指针的方式操作变量。从效果上看类似引用 。
7) Go 函数不支持函数重载
8) 在 Go 中,函数也是一种数据类型,可以赋值给一个变量,则该变量就是一个函数类型的变量 了。通过该变量可以对函数调用
9) 函数既然是一种数据类型,因此在 Go 中,函数可以作为形参,并且调用
10) 为了简化数据类型定义,Go 支持自定义数据类型
基本语法:type 自定义数据类型名 数据类型 // 理解: 相当于一个别名 案例:type myInt int // 这时 myInt 就等价 int 来使用了.
int
案例:type mySum func (int, int) int // 这时 mySum 就等价 一个 函数类型 func (int, int)
举例说明自定义数据类型的使用:
———————————————————————————————-
11) 支持对函数返回值命名
12) 使用 _ 标识符,忽略返回值
13) Go 支持可变参数
(3) 如果一个函数的形参列表中有可变参数,则可变参数需要放在形参列表最后。 代码演示: