Con punteros podrías hacer algo parecido, con arrays no se me ocurre como:
Código Delphi
[-]
type
TRecord = packed record
Codigo : Smallint;
Numero : Smallint;
end;
var
r : TRecord;
p1 : ^Smallint;
begin
r.Codigo := 1;
r.Numero := 123;
p1 := @r;
Label1.Caption := IntToStr(p1^);
Inc(p1);
Label2.Caption := IntToStr(p1^);
end;