Typy wskaźnikowe ogólne 1
Typy wskaźnikowe ogólne
(
general access
types
) umożliwiają
pośredni dostęp
(
indirect access
), czyli przez wskaźniki, do
zadeklarowanych obiektów oraz do danych
utworzonych przez alokatory.
type Wsk_Integer is access all Integer;
Wsk_I : Wsk_Integer;
I : aliased Integer := 4;
Wsk_I := I'access;
Put (Item => Wsk_I.all, Width => 2);
Typy wskaźnikowe ogólne 2
K : Integer;
Nie można napisać:
Wsk_I := K'access;
K := Wsk_I.all;
Podobnie można postąpić w przypadku
innych typów standardowych.
Program.
Wsk_Ogolne
Program.
Wsk_Ogolne_2
Typy wskaźnikowe ogólne 3
Można też używać wskaźników dających
dostęp do struktur takich jak tablice,
albo rekordy
Program.
Wsk_Ogolne_Struktury
Jeżeli chcemy uniemożliwić zmienianie
wartości danych wskazywanych, to w
deklaracji typu wskaźnikowego słowo
kluczowe all zastępujemy słowem
constant
Program.
Wsk_Ogolne_RO
Typy wskaźnikowe ogólne 4
Wskaźniki ogólne
mogą wskazywać
na
podprogramy, co pozwala na pisanie
podprogramów, których
parametrami są
podprogramy
.
Możemy pisać:
type Funkcja_Rzeczywista is access function
(X : Float) return Float;
Funkcja_Testowa : Funkcja_Rzeczywista;
Zmienna ta wskazuje na funkcje, których nagłówki
są zgodne z deklaracją typu wskaźnikowego.
Program.
Metoda_Simpsona