Ceci est une ancienne révision du document !


Enumération et Set Of

Enumération

Déclaration d'une énumération

type
  MonthType = (January, February, March, April,
              May, June, July, August, September,
              October, November, December);
 
// exemple d'utilisation
var
  Month : MonthType;
 ...
  Month := January;  // Equivalent a Month := TMonthType(0);                 

Ord

La function Ord permet de connaitre la valeur ordinale d'une valeur énumérée.

Exempe :

  ord(January) = 0
  ord(December) = 11

On peut modifier l'ordinale a la déclaration exemples :

type
  TMonthType = (January=1, February, March, April,May, June, July, August, September, October, November, December);
 
type
  TMonthType = (January=1, FirstMonth=1,February=2, SecondMonth=2...);
 
type
  TMonthType = (January=1, February, May=5,June, July);

Dans le dernier cas ord(January)=1, ord(February)=2, ord(May)=5,ord(June)=6, ord(July)=7

Succ et Pred

  succ(January) => February...

High et Low

Retourne respectivement la plus grande valeur (December) ou la plus petite valeur (January)

Exemples de codes

Parcourir un ensemble

for i := Ord(Low(TMonthType)) to Ord(High(TMonthType)) do
  begin
     x:= GetEnumName(TypeInfo(TMonthType), Ord(i));
  end;

Set Of

Vous pourriez laisser un commentaire si vous étiez connecté.