Records

Les enregistrements permettent de définir des structures regroupant plusieurs champs.
Il s'agit d'un type valeur, dupliqué par une affectation, et alloué statiquement (à la différence des classes).

Déclaration

Les enregistrements sont déclarés comme suit:

type
   TMonEnregistrement = record
      NomChamp1 : TypeChamp1;
      ...autres champs...
   end;

Constantes

Les constantes de type record peuvent être initialisées avec la syntaxe suivante:

type TPoint = record
      X, Y : Integer;
      Name : String;
   end;

const cPointZero : TPoint = (X: 0; Y: 0; Name: 'Zero');

Il n'est pas obligatoire de spécifier tous les champs, les champs non spécifiés prendront leur valeur par défaut (0 pour les valeurs numériques, chaîne vide pour les chaînes, etc.).