Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
|
prog:lazarus:func:func [13/03/2020 16:11] thierry [Constant parameters] |
prog:lazarus:func:func [19/08/2024 18:30] (Version actuelle) thierry [Of Object] |
||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====== Function et Procedure ====== | + | ====== Function, Procedure et Property ====== |
| + | ===== Déclaration des procedures et functions ===== | ||
| + | ==== Deprectated ==== | ||
| + | Pour signifier au développeur qu'il utilise un fonction qui est obsolète, on peut aussi ajouter un message, comme ceci : | ||
| + | <code pascal> | ||
| + | procedure FreeThenNil(var obj); deprecated 'Use LazUtilities.FreeThenNil instead'; | ||
| + | </code> | ||
| + | ==== Of Object ==== | ||
| + | La syntaxe correcte pour déclarer une fonction ou une méthode qui peut être assignée à un pointeur de méthode (souvent utilisé pour les événements) en Pascal (Delphi/Lazarus) est la suivante : | ||
| + | <code pascal> | ||
| + | // Pour un procedure | ||
| + | TStateChangeEvent = procedure(Sender: TObject; AState: TState; AObject: TObject) of object; | ||
| + | |||
| + | //Pour une Function | ||
| + | TMyFuncEvent = function(Sender: TObject): boolean of object; | ||
| + | |||
| + | </code> | ||
| + | |||
| + | |||
| ===== Parametres ===== | ===== Parametres ===== | ||
| ==== Types de paramètres ==== | ==== Types de paramètres ==== | ||
| Source : [[https://www.freepascal.org/docs-html/ref/refse91.html]] | Source : [[https://www.freepascal.org/docs-html/ref/refse91.html]] | ||
| === Value parameters === | === Value parameters === | ||
| + | <note>ToDo</note> | ||
| === Variable parameters === | === Variable parameters === | ||
| + | <note>ToDo</note> | ||
| === Out parameters === | === Out parameters === | ||
| Le but d'un paramètre ''out'' est de renvoyer des valeurs à la routine appelante : la variable est passée par référence.\\ | Le but d'un paramètre ''out'' est de renvoyer des valeurs à la routine appelante : la variable est passée par référence.\\ | ||
| Ligne 50: | Ligne 71: | ||
| Source:[[https://www.freepascal.org/docs-html/ref/refsu66.html]] | Source:[[https://www.freepascal.org/docs-html/ref/refsu66.html]] | ||
| === Constant parameters === | === Constant parameters === | ||
| - | ==== Open array parameters ==== | + | <note>ToDo</note> |
| - | ==== Array of const ==== | + | === Open array parameters === |
| + | <note>ToDo</note> | ||
| + | === Array of const === | ||
| + | <note>ToDo</note> | ||
| ==== Valeur par défaut d'un paramètre ==== | ==== Valeur par défaut d'un paramètre ==== | ||
| L'exemple suivant affiche 20 à l’écran. | L'exemple suivant affiche 20 à l’écran. | ||
| Ligne 70: | Ligne 94: | ||
| Source:[[https://www.freepascal.org/docs-html/ref/refsu64.html]] | Source:[[https://www.freepascal.org/docs-html/ref/refsu64.html]] | ||
| + | ===== Properties ===== | ||
| + | <code delphi> | ||
| + | property ReadOnly: Boolean read GetReadOnly write SetReadOnly default false; | ||
| + | </code> | ||