ada
Généralité à Ada
Recherche…
Sous-programmes génériques
Les sous-programmes génériques sont utiles pour créer des sous-programmes ayant la même structure pour plusieurs types. Par exemple, pour échanger deux objets:
generic
type A_Type is private;
procedure Swap (Left, Right : in out A_Type) is
Temp : A_Type := Left;
begin
Left := Right;
Right := Temp;
end Swap;
Paquets génériques
Dans le package générique Ada, lors de l'instanciation, les données sont dupliquées; en d'autres termes, si elles contiennent des variables globales, chaque instance aura sa propre copie de la variable, correctement typée et indépendante des autres.
generic
type T is private;
package Gen is
type C is tagged record
V : T;
end record;
G : Integer;
end Gen;
Paramètres génériques
Ada offre une grande variété de paramètres génériques difficiles à traduire dans d'autres langues. Les paramètres utilisés lors de l'instanciation et par conséquent ceux sur lesquels l'unité générique peut s'appuyer peuvent être des variables, des types, des sous-programmes ou des instances de package, avec certaines propriétés. Par exemple, ce qui suit fournit un algorithme de tri pour tout type de tableau:
generic
type Component is private;
type Index is (<>);
with function "<" (Left, Right : Component) return Boolean;
type Array_Type is array (Index range <>) of Component;
procedure Sort (A : in out Array_Type);