Latest web development tutorials

Aller langue la portée des variables

Réclamé identifiant de périmètre constant représenté par le type, variable, fonction ou package portée dans le code source.

variables linguistiques Go peuvent être déclarées en trois endroits:

  • Les variables définies dans une fonction appelées variables locales
  • Variable en dehors de la définition de la fonction est appelée une variable globale
  • variables de définition de la fonction appelée paramètres formels

Laissez-nous comprendre les variables locales spécifiques, des variables globales et des paramètres formels.


Les variables locales

valeurs appelées variables locales dans la déclaration des variables du corps de la fonction, ils ne fonctionnent qu'en champ vivo, des paramètres et de retour des variables sont des variables locales.

La fonction exemple suivant main () utilise des variables locales a, b, c:

package main

import "fmt"

func main() {
   /* 声明局部变量 */
   var a, b, c int 

   /* 初始化参数 */
   a = 10
   b = 20
   c = a + b

   fmt.Printf ("结果: a = %d, b = %d and c = %d\n", a, b, c)
}

Des exemples de mise en oeuvre du résultat ci-dessus est la suivante:

结果: a = 10, b = 20 and c = 30

Variables globales

Appelé variables globales dans la déclaration des variables de la fonction in vitro, les variables globales peuvent (après avoir été exporté) en utilisant l'ensemble du paquet, même package externe.

Les variables globales peuvent être utilisées dans toutes les fonctions, l'exemple suivant montre comment utiliser des variables globales:

package main

import "fmt"

/* 声明全局变量 */
var g int

func main() {

   /* 声明局部变量 */
   var a, b int

   /* 初始化参数 */
   a = 10
   b = 20
   g = a + b

   fmt.Printf("结果: a = %d, b = %d and g = %d\n", a, b, g)
}

Des exemples de mise en oeuvre du résultat ci-dessus est la suivante:

结果: a = 10, b = 20 and g = 30

Aller programme de langue dans les variables globales et les variables locales peuvent être le même nom, mais les variables locales au sein de la fonction priorité sera donnée. Des exemples sont les suivants:

package main

import "fmt"

/* 声明全局变量 */
var g int = 20

func main() {
   /* 声明局部变量 */
   var g int = 10

   fmt.Printf ("结果: g = %d\n",  g)
}

Des exemples de mise en oeuvre du résultat ci-dessus est la suivante:

结果: g = 10

paramètres formels

Paramètre de forme en fonction des variables locales utilisées. Des exemples sont les suivants:

package main

import "fmt"

/* 声明全局变量 */
var a int = 20;

func main() {
   /* main 函数中声明局部变量 */
   var a int = 10
   var b int = 20
   var c int = 0

   fmt.Printf("main()函数中 a = %d\n",  a);
   c = sum( a, b);
   fmt.Printf("main()函数中 c = %d\n",  c);
}

/* 函数定义-两数相加 */
func sum(a, b int) int {
   fmt.Printf("sum() 函数中 a = %d\n",  a);
   fmt.Printf("sum() 函数中 b = %d\n",  b);

   return a + b;
}

Des exemples de mise en oeuvre du résultat ci-dessus est la suivante:

main()函数中 a = 10
sum() 函数中 a = 10
sum() 函数中 b = 20
main()函数中 c = 30

Initialisation variables locales et globales

variables locales et globales des différents types de défauts:

Types de données Par défaut initialisation
int 0
float32 0
aiguille néant