Afficher : Delphi C++
Préférences d'affichage

Utilisation d'interfaces avec des procédures

De RAD Studio XE2

Remonter à Utilisation du modèle objet - Index

Les interfaces vous permettent d'écrire des procédures génériques pouvant gérer des objets sans que ces objets dérivent d'une classe de base particulière. En utilisant les interfaces IPaint et IRotate définies précédemment, vous pouvez écrire les procédures suivantes :

procedure PaintObjects(Painters: array of IPaint);
var
  I: Integer;
begin
  for I := Low(Painters) to High(Painters) do
    Painters[I].Paint;
end;
procedure RotateObjects(Degrees: Integer; Rotaters: array of IRotate);
var
  I: Integer;
begin
  for I := Low(Rotaters) to High(Rotaters) do
    Rotaters[I].Rotate(Degrees);
end;

RotateObjects n'a pas besoin que les objets sachent se dessiner par eux-mêmes et PaintObjects n'exige pas que les objets sachent pivoter. Cela permet aux procédures génériques d'être utilisées plus fréquemment que si elles avaient été écrites uniquement pour la classe TFigure.

Voir aussi

Versions précédentes
Autres langues