Partager via


Point d'entrée (F#)

Cette rubrique décrit la méthode à utiliser pour définir le point d'entrée à un programme F#.

[<EntryPoint>]
let-function-binding

Notes

Dans la syntaxe précédente, let-function-binding est la définition d'une fonction dans une liaison let.

Le point d'entrée à un programme compilé en tant que fichier exécutable est l'endroit où l'exécution démarre formellement.Pour spécifier le point d'entrée à une application F#, appliquez l'attribut EntryPoint à la fonction main du programme.Cette fonction (créée à l'aide d'une liaison let) doit être la dernière fonction dans le dernier fichier compilé.Le dernier fichier compilé est le dernier fichier du projet ou le dernier fichier passé à la ligne de commande.

La fonction de point d'entrée a le type string array -> int.Les arguments fournis sur la ligne de commande sont passés à la fonction main dans le tableau de chaînes.Le premier élément du tableau est le premier argument ; le nom du fichier exécutable n'est pas inclus dans le tableau, comme c'est le cas dans d'autres langages.La valeur de retour est utilisée comme code de sortie pour le processus.Zéro indique habituellement que l'opération a réussi ; des valeurs différentes de zéro indiquent une erreur.Il n'y a pas de convention en ce qui concerne la signification spécifique de codes de retour différents de zéro ; les significations des codes de retour sont spécifiques à l'application.

L'exemple suivant illustre une fonction main simple.

[<EntryPoint>]
let main args =
    printfn "Arguments passed to function : %A" args
    // Return 0. This indicates success.
    0

Lorsque ce code est exécuté avec la ligne de commande EntryPoint.exe 1 2 3, la sortie est comme suit.

Arguments passed to function : [|"1"; "2"; "3"|]

Point d'entrée implicite

Lorsqu'un programme n'a aucun attribut EntryPoint qui indique explicitement le point d'entrée, les liaisons de niveau supérieur dans le dernier fichier à compiler sont utilisées comme point d'entrée.

Voir aussi

Référence

Fonctions (F#)

Liaisons let (F#)