Sök…


Generiska underprogram

Generiska underprogram är användbara för att skapa ett underprogram som har samma struktur för flera typer. För att exempelvis byta två objekt:

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;

Generiska paket

I det generiska Ada-paketet dupliceras data vid inställning; det vill säga om de innehåller globala variabler kommer varje instans att ha sin egen kopia av variabeln, ordentligt skrivna och oberoende av de andra.

generic
    type T is private;
package Gen is
    type C is tagged record
        V : T;
    end record;
    G : Integer;
end Gen;

Generiska parametrar

Ada erbjuder en mängd olika generiska parametrar som är svåra att översätta till andra språk. Parametrarna som används under inställning och som en konsekvens de som den generiska enheten kan lita på kan vara variabler, typer, delprogram eller paketinstanser med vissa egenskaper. Till exempel ger följande en sorteringsalgoritm för alla typer av array:

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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow