Aller langue valeur de la fonction valeur de transfert
Des moyens de transfert que lorsque vous appelez la fonction pour copier les paramètres réels passés à une fonction, de sorte que si les paramètres de la fonction peuvent être modifiés, ne sera pas affecter les paramètres réels.
Par défaut, la langue Go est passé par valeur, qui est, au cours de l'appel ne sera pas affecter les paramètres réels.
Les définitions de la fonction de permutation () suivantes:
/* 定义相互交换值的函数 */ func swap(x, y int) int { var temp int temp = x /* 保存 x 的值 */ x = y /* 将 y 值赋给 x */ y = temp /* 将 temp 值赋给 y*/ return temp; }
Ensuite, laissez-nous utiliser la valeur passée à l'appel de fonction swap ():
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; }
Les résultats suivants d'exécution de code:
交换前 a 的值为 : 100 交换前 b 的值为 : 200 交换后 a 的值 : 100 交换后 b 的值 : 200