ada
Generyczność w Adzie
Szukaj…
Ogólne podprogramy
Podprogramy ogólne są przydatne do tworzenia podprogramów o tej samej strukturze dla kilku typów. Na przykład, aby zamienić dwa obiekty:
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;
Pakiety ogólne
W pakiecie ogólnym Ada po utworzeniu instancji dane są duplikowane; to znaczy, jeśli zawierają zmienne globalne, każde wystąpienie będzie miało własną kopię zmiennej, odpowiednio wpisaną i niezależną od pozostałych.
generic
type T is private;
package Gen is
type C is tagged record
V : T;
end record;
G : Integer;
end Gen;
Ogólne parametry
Ada oferuje szeroki zakres ogólnych parametrów, które trudno jest przetłumaczyć na inne języki. Parametry używane podczas tworzenia instancji, aw konsekwencji te, na których może polegać jednostka ogólna, mogą być zmiennymi, typami, podprogramami lub instancjami pakietu o określonych właściwościach. Na przykład poniżej przedstawiono algorytm sortowania dla dowolnego rodzaju tablicy:
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);
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow