English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Le langage Go conserve deux fonctions à usage spécial, qui sontmain()etinit()Fonction.
En langage Go,mainLe paquet est un paquet spécial utilisé avec l'exécutable, et ce paquet contientmain()Fonction.main()Fonction est un type spécial de fonction, c'est le point d'entrée de l'exécutable. Elle n'accepte pas de paramètres et ne retourne rien. Comme elle peut être appelée automatiquementmain()Fonction, donc il n'est pas nécessaire de l'appeler explicitementmain()Fonction, et chaque programme exécutable doit contenir un package main etmain()Fonction.
//Déclaration du paquet principal package main //Importer des paquets import ( "fmt" "sort" "strings" "time" ) func principale() { //Trier la coupe s := []int{345, 78, 123, 10, 76, 2, 567, 5} sort.Ints(s) fmt.Println("Coupe triée : ", s) // Recherche de l'index fmt.Println("Valeur de l'index : ", strings.Index("w3codebox", "ks")) //Afficher l'horodatage actuel fmt.Println("Horodatage : ", time.Now().Unix()) }
Sortie :
Coupe triée : [2 5 10 76 78 123 345 567] Valeur de l'index : -1 Horodatage : 1593335332
Les fonctions init() sont comme la fonction principale, elles n'acceptent pas de paramètres et ne retournent rien. Chaque paquet contient cette fonction, et elle est appelée lors de l'initialisation du paquet. La fonction est déclarée implicitement, donc vous ne pouvez pas la faire appelée n'importe où, et vous pouvez créer plusieurs fonctions init() dans le même programme, et elles seront exécutées dans l'ordre de leur création. Vous pouvez créer des fonctions init() à n'importe quel endroit de votre programme, et elles sont appelées dans l'ordre alphabétique du nom de fichier (ordre alphabétique). Il est permis de placer des instructions dans la fonction init(), mais il faut toujours se souvenir d'exécuter la fonction init() avant la fonction principale(), donc elle ne dépend pas de la fonction principale(). L'objectif principal des fonctions init() est d'initialiser les variables globales qui ne peuvent pas être initialisées dans le contexte global.
package main import "fmt" //Plusieurs fonctions init() func init() { fmt.Println("Bienvenue dans la fonction init()") } func init() { fmt.Println("Bonjour ! fonction init()") } func principale() { fmt.Println("Bienvenue dans la fonction principale()") }
Sortie :
Bienvenue dans la fonction init() Bonjour ! fonction init() Bienvenue dans la fonction principale()