Instrukcja wiążąca

Standardowo odwołania do pól rekordów lub pól i metod obiektu realizowane są za pomocą nazw kwalifikowanych tworzonych przy pomocy odpowiednich desygnatorów pól.

Przykład w języku Pascal:

 type
   tadres = record
     ulica : string[50];
     miasto : string[30]
   end;
   tosoba = record
     imie : string[20];
     nazwisko : string[30];
     adres : tadres
   end;
 var osoba : tosoba;

Odwołania do pól zmiennej osoba mają postać:

 osoba.imie:='Jan';
 osoba.nazwisko:='Kowalski';
 osoba.adres.ulica:='ul. Nowa 10/10';
 osoba.adres.miasto:='Wroclaw';

Takie odwołania do pól określonego rekordu w grupie instrukcji zaciemniają czytelność kodu źródłowego i utrudniają jego pisanie. W celu uproszczenia kodu wprowadzono instrukcję wiążącą.

Przykład w języku Pascal:

 { zastosowanie instrukcji wazacej }
 with  osoba.adres do
   begin
     ulica:='ul. Nowa 10/10';
     miasto:='Wroclaw'
   end;

Działanie instrukcji wiążącej polega na powiązaniu niezdefiniowanych identyfikatorów ulica i miasto z rekordem wskazanym w nagłówku instrukcji wiążącej i w efekcie przypisanie polom tego rekordu (niewskazanego jawnie w instrukcji przypisania) odpowiednich wartości. Z powyższego wynika jasno, że choć powyższa konstrukcja nazwana została i zdefiniowana w językach jako "instrukcja", tak naprawdę nie jest instrukcją (nie generuje żadnego dodatkowego kodu wynikowego), lecz jest dyrektywą dla kompilatora, ułatwiającą pisanie kodu źródłowego.

O ile nie zaznaczono inaczej, treść tej strony objęta jest licencją Creative Commons Attribution-ShareAlike 3.0 License