Latest web development tutorials

Go языка значение переноса значения функции

функция Go функция Go

Передача означает, что при вызове функции, чтобы скопировать фактические параметры, передаваемые в функцию, так что если параметры функции могут быть изменены, не влияют на фактические параметры.

По умолчанию Go язык передается по значению, то есть, во время разговора не будет влиять на фактические параметры.

Следующие определения функции подкачки ():

/* 定义相互交换值的函数 */
func swap(x, y int) int {
   var temp int

   temp = x /* 保存 x 的值 */
   x = y    /* 将 y 值赋给 x */
   y = temp /* 将 temp 值赋给 y*/

   return temp;
}

Далее, давайте используем значение, переданное в функцию подкачки вызова ():

package main

import "fmt"

func main() {
   /* 定义局部变量 */
   var a int = 100
   var b int = 200

   fmt.Printf("交换前 a 的值为 : %d\n", a )
   fmt.Printf("交换前 b 的值为 : %d\n", b )

   /* 通过调用函数来交换值 */
   swap(a, b)

   fmt.Printf("交换后 a 的值 : %d\n", a )
   fmt.Printf("交换后 b 的值 : %d\n", b )
}

/* 定义相互交换值的函数 */
func swap(x, y int) int {
   var temp int

   temp = x /* 保存 x 的值 */
   x = y    /* 将 y 值赋给 x */
   y = temp /* 将 temp 值赋给 y*/

   return temp;
}

Следующие результаты выполнения кода:

交换前 a 的值为 : 100
交换前 b 的值为 : 200
交换后 a 的值 : 100
交换后 b 的值 : 200

функция Go функция Go