2021-06-12 来源:华纳网 责任编辑:王双双 人气:
核心提示:【谷雨课堂】Go实战 No.009 Go干货!函数与结构体
知识点:
函数
结构体

内容:
大家好,欢迎来到谷雨课堂
func function_name( [参数列表,可以是多个] ) [返回值类型] {
  函数体
}

func:函数由 func 开始声明
function_name:函数名称,函数名和参数列表一起构成了函数签名。
参数列表:参数列表,
参数就像一个占位符,
当函数被调用时,你可以将值传递给参数,
这个值被称为实际参数。
参数列表指定的是参数类型、顺序、及参数个数。
参数是可选的,也就是说函数也可以不包含参数。
返回类型,函数返回一列值。
有些功能不需要返回值,
这种情况下返回值类型不是必须的。
函数体:函数定义的代码集合。

Go语言与其它语言相比,最大的一个特点就是函数可以有多个返回值,

//返回值可以有多个
func swap(x, y string) (string, string) {
  return y, x
}

比如,上面这个函数用于调换两个输入的变量,

我们知道数组可以存储同一类型的数据,
但在结构体中我们可以同时保存不同数据类型的数据
结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。
如果要访问结构体成员,需要使用点 . 操作符,格式为:
结构体.成员名

//【谷雨课堂】Go实战 Go.009 Go干货!函数与结构体
package main
import "fmt"

//定义结构体
type TBook struct {
  title   string
  author  string
  subject string
  id      int
}
//声明一个函数,输出两个输入函数的相加的结果
func add(a, b int) int {
  //声明局部变量
  var c int
  c = a + b
  return c
}

//返回值可以有多个
func swap(x, y string) (string, string) {
  return y, x
}

//Go语言里至少有一个main函数,用于程序执行的入口
func main() {
  //调用函数
  fmt.Println(add(1, 2))

  //调用多个返回值的函数
  a, b := swap("111", "222")
  fmt.Println(a, b)

  //直接使用一个结构体 
  book := TBook{title: "谷雨课堂Go语言", author: "谷雨", subject: "Go 语言教程", id: 123}
  fmt.Println(book)

  //也可以这样使用结构体
  var b1 TBook
  b1.title = "谷雨课堂Go语言"
  b1.author = "谷雨"
  b1.subject = "Go 语言教程"
  b1.id = 456
  fmt.Println(b1)
}


除此这外,函数和结构体还可以使用指针进行各种引用,
可以大幅提高效率,
以后会陆续使用到,
函数的结构体,应用场景很多,
这部分一定要多加实际练习

完整的源代码可以登录【华纳网】下载。
https://www.worldwarner.com/




免责声明:本文仅代表作者个人观点,与华纳网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。