Go语言学习-函数
函数 Go不是一门纯函数式的编程语言,但是函数在Go中是“第一公民”,表现在: 函数是一种类型,函数类型变量可以像其他类型变量一样使用,可以作为其他函数的参数或返回值,也可以直接调用执行。 函数支持多值返回。 支持闭包。 函数支持可变参数。 Go是通过编译成本地代码且基于“堆栈”式执行的,Go的错误处理和函数也有千丝万缕的联系。 函数定义 函数是Go程序源代码的基本构造单位,一个函数的定义包括如下几个部分: 1.函数声明关键字func 2.函数名 3.参数列表 4.返回列表 5.函数体。 函数名遵循标识符的命名规则,首字母的大小写决定该函数在其他包的可见性:大写时其他包可见,小写时只有相同的包可以访问; 函数的参数和返回值需要使用“()”包裹,如果只有一个返回值,而且使用的是非命名的参数,则返回参数的“()”可以省略。 函数体使用“{}”包裹,并且“{”必须位于函数返回值同行的行尾。 func funcName ( param - list ) ( result - list ) { function - body } 函数的特点 函数可以没有输入参数,也可以没有返回值(默认返回0)。 func A ( ) { //do something //... } func A ( ) int { //do something //... return 1 )