FUNCTION |
Fonctions |
|---|---|
| Pascal | |
Syntaxe
|
function identfunc:result-type-id; corps-de-la-fonction; |
|
function identfunc([const|var] id-list:type-id;[const|var] id-list:type-id):result-type-id; corps-de-la-fonction; |
Paramètres
| Nom | Description |
|---|---|
| identfunc | Ce paramètre permet d'indiquer l'identificateur de nom de la fonction |
| id-list | Ce paramètre permet d'indiquer la liste des variables |
| type-id | Ce paramètre permet d'indiquer le type de données |
| result-type-id | Ce paramètre permet d'indiquer le type de données retourné par la fonction |
| corps-de-la-fonction | Ce paramètre permet d'indiquer le corps de la fonction |
Description
Ce mot réservé permet de définir une fonction utilisateur. Les déclarations de fonction servent à définir les parties du programme calculant une valeur scalaire ou une valeur de pointeur. Les fonctions sont activées par l'évaluation d'un indicateur de fonction étant constitué d'une expression. Une déclaration de fonction comprend les parties 7, dont chacune, à l'exception de la première et de la dernière, peut être vide. Un indicateur de fonction spécifie l'activation d'une fonction. Il se compose de l'identifiant désignant la fonction et d'une liste de paramètres réels. Les paramètres sont des variables, des expressions, des procédures et des fonctions. Ils sont substitués aux paramètres de formulaire correspondants.
Remarques
- De nombreuses marques supportent seulement le mot réservé «var» comme paramètre dans la fonction et ignore «const».
- Le mot clef FUNCTION permet de déclarer une routine qui retourne une valeur. Cette valeur est obtenue via le nom de la fonction, qui agit comme une variable interne. C'est l'élément central du calcul fonctionnel en Pascal.
- Une fonction commence par une déclaration d'entête indiquant le nom, les paramètres éventuels et le type de retour. Le corps de la fonction est ensuite défini entre BEGIN et END. Cette structure est semblable à celle d'une procédure, à la différence qu'une valeur est retournée.
- La fonction retourne une valeur en affectant une valeur à son propre identifiant. Par exemple : maFonction := a + b; dans le corps de la fonction. Cette affectation représente la sortie finale.
- Les paramètres d'une fonction peuvent être déclarés avec les mots clefs VAR ou CONST, mais certaines implémentations ignorent CONST. Cela signifie que les paramètres const peuvent en réalité être modifiables. Il faut donc vérifier le comportement du compilateur utilisé.
- Une fonction peut contenir des variables locales utilisées uniquement pendant son exécution. Ces variables sont définies entre l'entête et le corps principal. Elles permettent de stocker des résultats intermédiaires.
- Les fonctions peuvent être appelées dans des expressions, ce qui permet de les imbriquer dans d'autres calculs. Cela les rend puissantes pour factoriser le code et éviter les redondances. Leur retour est automatiquement intégré dans l'expression globale.
- Le type de retour (comme Integer, Boolean, String,...) doit être clairement indiqué dans l'entête. Une incohérence entre la valeur retournée et ce type générera une erreur de compilation. La compatibilité stricte des types est une exigence de Pascal.
- FUNCTION est un mot réservé et ne peut donc pas être utilisé pour nommer une variable ou un type. Il est exclusivement utilisé pour introduire une définition de fonction. Son usage permet une meilleure structuration et modularité du code.
Dernière mise à jour : Mardi, le 25 octobre 2016