Default parameter/fr
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
polski (pl) │
русский (ru) │
Un paramètre par défaut aussi appelé paramètre optionnel (ou argument par défaut) est un paramètre de fonction or procédure auquel une valeur par défaut est fournie. Si le prrogrammeur ne donne pas de valeur à ce paramètre, la valeur par défaut est utilisée. Si le programmeur passe une valeur, celle-ci est utilisée. Le programmeur peut étendre un routine existante en y ajoutant des paramètres ayant une valeur par défaut au lieu d'écrire une routine identique avec des arguments différents. Cela est utile quand pour l'un des paramètres, la valeur par défaut est fortement probable.
Seules les valeurs de type simpe sont permises. Attention à l'ordre des paramètres par défaut, ils sont tous en fin de signature, après les paramètres sans valeur par défaut et doivent être organisés par ordre décroissant de probabilité d'emploi de la valeur par défaut. Le dernier paramètre par défaut de la liste ayant le plus de chance de prendre sa valeur par défaut que le premier.
Exemple deadline_day
uses SysUtils, DateUtils
function deadline_day( day: integer; month: integer = 0 ) : tDateTime;
var
n :TDateTime;
y, m, d :word;
begin
n := now;
DecodeDate( n, y, m, d );
if month = 0 then
begin
if d > day then
begin
n := IncMonth( n );
DecodeDate( n, y, m, d );
end;
end
else
begin
if month < m then n := IncYear( n );
DecodeDate( n, y, m, d );
m := month;
end;
d := day;
result := EncodeDate( y, m, d );
end;
Le paramètre par défaut est utilisé à la place du paramètre manquent en queue dans un appel.
- dans un programme, appeler
deadline_day( 5 );
//-> appelledeadline_day( 5, 0 );
- dans un programme, appeler
deadline_day( 5, 1 );
//-> appelledeadline_day( 5, 1 );