Главная страницаОбратная связьКарта сайта

Получить количество ссылок AnsiString

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

function GetAnsistringRefcount(const S: string): Cardinal;
 asm
   or eax, eax
   jz @done
   sub eax, 8
   mov eax, dword ptr [eax]
 @done:
 end;

 procedure TForm1.Button1Click(Sender: TObject);
 var
   S1, S2: string;
 begin
   memo1.lines.Add(Format("Refcount at start: %d",
     [GetAnsistringRefcount(S1)]));
   S1 := StringOfChar("A", 10);
   memo1.lines.Add(Format("Refcount after assignment: %d",
     [GetAnsistringRefcount(S1)]));
   S2 := S1;
   memo1.lines.Add(Format("Refcount after S2:=S1: %d",
     [GetAnsistringRefcount(S1)]));
   S2 := S1 + S2;
   memo1.lines.Add(Format("Refcount after S2:=S1+S2: %d",
     [GetAnsistringRefcount(S1)]));
 end;

Обсудить статью на форуме


Если Вас заинтересовала или понравилась информация по разработке на Delph - "Получить количество ссылок AnsiString", Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу:

Так же Вы можете задать вопрос по работе этого модуля или примера через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!
   


Copyright © 2008 - 2024 Дискета.info