The Ada Program: simple.adb

  1 -- simple.adb:  some simple examples of pointers
  2 
  3 with Ada.Text_IO, Ada.Integer_Text_IO;
  4 use Ada;
  5 
  6 procedure Simple is
  7 
  8    type Integer_Pointer is access Integer;
  9    A,B: Integer_Pointer := null;
 10    C: Integer;
 11 
 12 begin
 13 
 14    A := new Integer;
 15    A := new Integer'(17);
 16 
 17    B := new Integer'(32);
 18 
 19    Integer_Text_IO.Get (Item => A.all);
 20    Integer_Text_IO.Put (Item => B.all);
 21 
 22    C := A.all + B.all;
 23 
 24    -- copy the value
 25    A.all := B.all;
 26 
 27    -- make an alias
 28    A := B;
 29 
 30    A.all := 49;
 31    Integer_Text_IO.Put (Item => B.all);
 32 
 33 end Simple;