По-моему, интересный факт... Что выведет код (компилятор не юзать): Code: procedure TForm1.FormCreate(Sender: TObject); var s1, s2: String; begin s1 := 'test'; s1 := s1+'a'; //чтобы можно было изменять строку в асм коде ниже - ибо иначе она, по-сути, остаётся константой s2 := s1; asm mov eax, s2 mov byte ptr [eax],65 end; showmessage(s2); showmessage(s1); end; Ответ ниже _______________________ Ответ: Aesta Aesta Объяснение - delphi хранит строки лениво.
хм...если не ошибюсь, то я про это прочитал давно, в книге "О чем не пишут в книгах по DELPHI" раздел подводные камни....