Fonction - Définition d'une méthode

Attribut de Type ou de Variable. Définition d'une méthode fonctionnelle.

Syntaxe

TypeDAcces Fonction InflexionAppel NomDeLaFonction ( ListeDeParametresDUnAppel ) Retourner TypeElementaire

Description

L'instruction Fonction permet de définir une méthode fonctionnelle.

Une méthode fonctionnelle est une fonction propre à un objet du type en cours de définition. Une méthode est toujours existante. Puisqu'il s'agit d'une méthode, cela est un traitement au même titre qu'une fonction définie en dehors d'un type. Elle peut être surchargée soit :

Une méthode comporte toujours un paramètre implicite qui est l'objet à laquelle elle s'applique. Ce paramètre n'apparaît pas dans le prototype de la méthode. Cet objet identifié par Objet dans le corps de la méthode peut être employé comme tout autre paramètre.

Exemple

Type TA
/*****/
Fin Type
/* Le type TA est compose de deux propriétés (B, E) et de deux méthodes (FMethode1 et FMethode2). */

Type TB HeriteDe TA
/******************/
Fin Type
/* Le type TB est compose des trois propriétés de TA, d'une propriété supplémentaire (D) et d'une méthode supplémentaire FMethode3. La méthode FMethode1 est surchargée. La méthode FMethode3 est surchargée en trois exemplaires en fonction du type du paramètre. */

Type TC
/*****/
Fin Type
/* Le type TC est compose de deux méthodes FMethode1 et FMethode2. La méthode FMethode1 peut être surchargée mais pas la méthode FMethode2. */

/****************************************************************/
Fonction TA.FMethode1(F : Fichier) Retourner Booleen
/* Objet : Methode FMethode1 de TA. */
/****************************************************************/
...
Fin Fonction

/****************************************************************/
Fonction TA.FMethode2() Retourner Caractere
/* Objet : Methode FMethode2 de TA. */
/****************************************************************/
...
Fin Fonction

/****************************************************************/
Fonction TB.FMethode1(F : Fichier) Retourner Booleen
/* Objet : Methode FMethode1 de TB. */
/****************************************************************/
...
Fin Fonction

/****************************************************************/
Fonction TB.FMethode3(B : Booleen) Retourner Booleen
/* Objet : Methode FMethode3 de TB. */
/****************************************************************/
...
Fin Fonction

/****************************************************************/
Fonction TB.FMethode3(C : Caractere) Retourner Booleen
/* Objet : Methode FMethode3 de TB. */
/****************************************************************/
...
Fin Fonction

/****************************************************************/
Fonction TB.FMethode3(E : Entier) Retourner Booleen
/* Objet : Methode FMethode3 de TB. */
/****************************************************************/
...
Fin Fonction

/****************************************************************/
Fonction TC.FMethode1(F : Fichier) Retourner Booleen
/* Objet : Methode FMethode1 de TC. */
/****************************************************************/
...
Fin Fonction

/****************************************************************/
Fonction TC.FMethode2(B : Booleen) Retourner Booleen F
/* Objet : Methode FMethode2 de TC. */
/****************************************************************/
...
Fin Fonction

Voir aussi

Procedure, Operateur et Rappel pour connaître les autres types de méthodes possibles. Type pour définir un type de données. Final pour empêcher le surtypage.

Traduction

---------