Introduction
C’est bien de connaitre les différents types de variables mais encore faut-il savoir comment les déclarer avec de pouvoir les utiliser dans nos programmes. Nous allons passer en revue les différentes syntaxe, de la plus verbeuse jusqu’à celle que l’on utilisera couramment dans nos programmes.
Dans le langage GO, les affectations de valeurs à des variables s’effectue à l’aide du signe égale =. Cela peut paraitre une remarque désuète mais elle prendra tout son sens un peu plus tard dans ce billet.
Le mot clé var
La déclaration la plus standard est avec l’utilisation du mot clé var, son type, éventuellement une valeur initiale et un nom.
Syntaxes
La première est la plus complète et la plus verbeuse, on a tout préciser.
var <NOM_DE_VARIABLE> [TYPE] = <VALEUR_INITIALE>
Dans cette deuxième syntaxe nous avons omis de mettre une valeur initiale car celle-ci n’est pas obligatoire, par conséquent GO va mettre une valeur par défaut en fonction du type de la variable (voir l’exemple)
var <NOM_DE_VARIABLE> [TYPE]
Dans certains cas, nous devons déclarer plusieurs variables qui ont un type identique pour cela GO propose une syntaxe, comme précédemment avec des valeurs initiale ou sans valeurs initiales.
Ici avec des valeurs initiales.
var <VARIABLE1>, <VARIABLE2>, ... [TYPE] = <VALEUR1>, <VALEUR2>, <VALEUR3>, ...
Ici la déclaration sans valeur, GO affectera des valeurs par défauts en fonction du [TYPE]
var <VARIABLE1>, <VARIABLE2>, ... [TYPE]
Exemple avec le mot clé var
package main import ( "fmt" ) func main() { var valeur1 int = 20 var message string = "Welcome to you !!!" var smiley rune = rune(0x1F604) var valeur2 int var name string var entier1, entier2, entier3 int = 1, 2, 3 var a, b, c = 1, 2, "zzz" d, e, f := "John", 12, 2.5 fmt.Printf("%v %T\n", valeur1, valeur1) fmt.Printf("%v %T\n", message, message) fmt.Printf("%v %T %U %c\n", smiley, smiley, smiley, smiley) fmt.Printf("%v %T\n", valeur2, valeur2) fmt.Printf("[%v] %T\n", name, name) fmt.Printf("%d %d %d\n", entier1, entier2, entier3) fmt.Printf("%T %T %T\n", a, b, c) fmt.Printf("%T %T %T\n", d, e, f) }
Par inférence de type
L’inférence de type et donc sa détermination se fera grâce à la valeur initiale fournie. Dans le 1ere exemple se sera le type string, le deuxième le type float64 et le dernier le type int. Le type de la variable ne changera pas et ne pourra plus être changer au cours du programme.
Syntaxe
Noté bien l’utilisation du := qui signifie une déclaration et une inférence puisqu’une valeur initiale est obligatoire dans ce cas.
<NOM_DE_VARIABLE> := <VALEUR_INITIALE>
package main import ( "fmt" ) func main() { d, e, f := "John", 2.5, 12 fmt.Printf("%T %T %T\n", d, e, f) }
En résumé
Voilà maintenant vous savez :
A lire aussi …
Série : Langage GO – Les types basiques
Présentation des types différents types basiques pour la déclarations des variables dans le Langa…
Ajouer un commentaire