golang 函数

作者: admin 分类: golang 发布时间: 2015-10-08 14:28 ė 6 没有评论

函数是构建Go程序的基础部件;所遇有趣的事情都是在它其中发生的。函数
的定义看起来像这样:
Listing 3.1. 函数定义

type mytype int 新的类型,参阅第 5 章
golang-func

0 保留字func用于定义一个函数;
1 函数可以定义用于特定的类型,这类函数更加通俗的称呼是method。这
部分称作receiver而它是可选的。如下图:
golang-struct-func

2 funcname是你函数的名字;
3 int类型的变量q作为输入参数。参数用pass-by-value方式传递,意味着它
们会被复制;
4 变量r和s是这个函数的命名返回值。在Go的函数中可以返回多个值。
参阅第32页的“多值返回”。如果不想对返回的参数命名,只需要提供类
型:(int,int)。如果只有一个返回值,可以省略圆括号。如果函数是一
个子过程,并且没有任何返回值,也可以省略这些内容;
5 这是函数体,注意return是一个语句,所以包裹参数的括号是可选的。

package main

import “fmt”

func swap(x, y string) (string, string) {
return y, x
}

func main() {
a, b := swap(“hello”, “world”)
fmt.Println(a, b)
}
函数接受参数。在 Go; 中,函数可以返回多个“结果参数”,而不仅仅是一个值。它们可以像变量那样命名和使用。

如果命名了返回值参数,一个没有参数的 return; 语句,会将当前的值作为返回值返回。

package main

import “fmt”

func split(sum int) (x, y int) {
x = sum * 4/9
y = sum – x
return
}

func main() {
fmt.Println(split(17))

本文出自 小Q,转载时请注明出处及相应链接。

本文永久链接: http://www.linuxqq.com/archives/1505.html

0
更多
Ɣ回顶部