Terminologie des génériques

De Appmethod Topics
Aller à : navigation, rechercher

Remonter à Génériques - Index

Termes utilisés dans la description des génériques

La terminologie utilisée pour décrire les génériques est définie dans cette section.

Type générique

Une déclaration de type qui requiert la fourniture de paramètres de type afin de former un type réel.
List<Item> est un type générique dans le code suivant :

 type
  List<Item> = class
  ...
  end;

Générique

Identique à Type générique.

Paramètre de type

Un paramètre déclaré dans une déclaration de générique ou un en-tête de méthode, à utiliser comme type d'une autre déclaration dans sa déclaration de générique ou corps de méthode. Il sera lié à l'argument de type réel. Item est un paramètre de type dans le code suivant :

type
  List<Item> = class
  ...
  end;

Argument de type
et
Identificateur de type

Un type utilisé avec un identificateur de type afin de créer un type instancié. En utilisant l'exemple antérieur, List<Integer> est le type instancié (instancié générique), List est l'identificateur de type, et Integer est l'argument de type.

Type instancié

La combinaison d'un générique et d'un ensemble de paramètres.

Type construit

Identique au type instancié.

Type construit fermé

Un type construit avec tous ses paramètres résolus sur les types réels. List<Integer> est fermé car Integer est un type réel.

Type construit ouvert

Un type construit avec au moins un paramètre étant un paramètre de type. Si T est un paramètre de type d'une classe conteneur, List<T> est un type construit ouvert.

Instanciation

Le compilateur génère un code d'instruction réel pour les méthodes définies dans les génériques et la table des méthodes virtuelles réelle pour un type construit fermé. Ce processus est nécessaire avant d'émettre un fichier unité compilé Object Pascal (.dcu) ou un fichier objet (.obj) pour Win32.

Voir aussi