La fonction init peut être dans le package main, dans d'autres packages, et peut apparaître plusieurs fois dans le même package.
fonction principale (apprentissage recommandé : go) La fonction
main ne peut être que dans le package main.
Ordre d'exécution
Il existe deux fonctions réservées dans golang : la fonction init (peut être appliquée à tous les packages) et la fonction principale (ne peut être appliquée qu'à paquet principal). Ces deux fonctions ne peuvent avoir aucun paramètre ni renvoyer de valeurs une fois définies.
Bien que vous puissiez écrire n'importe quel nombre de fonctions d'initialisation dans un package, à la fois pour des raisons de lisibilité et de maintenabilité future, nous recommandons fortement aux utilisateurs d'écrire chaque fichier dans un package. Écrivez simplement une fonction d'initialisation.
Le programme go appellera automatiquement init() et main(), vous n'aurez donc pas besoin d'appeler ces deux fonctions nulle part. La fonction init dans chaque package est facultative, mais le package main doit contenir une fonction principale.
L'initialisation et l'exécution du programme démarrent à partir du package principal.
Si le package principal importe également d'autres packages, ils seront importés en séquence lors de la compilation. Parfois, un package sera importé par plusieurs packages en même temps, il ne sera donc importé qu'une seule fois (par exemple, de nombreux packages peuvent utiliser le package fmt, mais il ne sera importé qu'une seule fois, car il n'est pas nécessaire de l'importer plusieurs fois). fois).
Lorsqu'un package est importé, si le package importe également d'autres packages, les autres packages seront importés en premier, puis les constantes et variables au niveau du package dans ces packages seront initialisées, puis init sera exécuté . fonction (le cas échéant), et ainsi de suite.
Lorsque tous les packages importés sont chargés, il commencera à initialiser les constantes et variables au niveau du package dans le package principal, puis exécutera la fonction init dans le package principal (s'il existe), et enfin exécutera la fonction principale. . La figure suivante explique en détail l'ensemble du processus d'exécution :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!