Ниже приведен простой пример использования указателя в delphi.
Type
TRecord1 = Record
field1 : String;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Rec : TRecord1;
Ptr: ^TRecord1;
begin
Rec.field1:= 'field1';
Ptr := @Rec;
memo1.Lines.Add (Ptr^.field1);
memo1.Lines.Add (Ptr.field1); // it also works.
end;
В этом случае работают Ptr ^ и Ptr. Кажется, delphi позволяет пользователю более гибко указывать на значение. Но просто читая две строки, они синтаксически разные и могут означать по-разному. В таком случае обе работают. Но мой вопрос:
- как пользователь может узнать в других ситуациях, где ^ может или не может быть опущено или, где с ^ или без ^ означает одно и то же или иначе?
- Что это за ситуации? Примеры будут оценены.
- Почему? (Необязательно)
Большое спасибо заранее.