Récupération du nom du fichier de code source et du numéro de ligne dans Go
Dans les langages de programmation comme C/C, les développeurs peuvent exploiter FILE et LINE pour obtenir le chemin du fichier de code source actuel et le numéro de ligne. Go offre-t-il une fonctionnalité similaire ?
Réponse :
Absolument. Go fournit une fonction intégrée appelée runtime.Caller pour accéder au nom du fichier de code source et au numéro de ligne de la fonction actuelle.
Implémentation :
Pour utiliser le runtime. Appelant, vous pouvez l'appeler avec un argument entier facultatif :
func GetSourceInfo(skip int) (string, int) { _, thisFile, thisLine, ok := runtime.Caller(skip) if !ok { return "", 0 } return thisFile, thisLine }
Le paramètre skip spécifie le nombre de couches de la pile d'appels à monter. Par exemple, skip=0 renverrait les informations source de la fonction actuelle, skip=1 renverrait les informations source de l'appelant de la fonction actuelle, et ainsi de suite.
Exemple d'utilisation :
import ( "fmt" "runtime" ) func main() { file, line := GetSourceInfo(1) fmt.Println("Calling function:", file, line) }
Sortie :
Calling function: /path/to/my/file.go 12
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!