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:13] thierry [Open array 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 ==== | ||
Ligne 56: | Ligne 75: | ||
<note>ToDo</note> | <note>ToDo</note> | ||
=== Array of const === | === 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 74: | 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> | ||