Программы   Загрузка Партнерство   О компании Контакты  
 
                    
  Карта Сайта   
   

Освобождение записей

Для начала необходимо привести объект к нужному типу, например, так:


var
i: integer;
begin
...
for i := 0 to MyList.Count - 1 do
dispose(PMyRecord(MyList[i]));
MyList.Free;
end;


или


begin

for i := 0 to MyList.Count - 1 do
dispose(PMyRecord(MyList.items[i]));
MyList.Free;

end;

Items - свойство по умолчанию, поэтому вам нет необходимости определять это, хотя обратное не помешает.

Теперь можно заняться созданием работоспособной и полезной функцией. В форме:


var
p : ^mystruct;
begin
new(p);
...
dispose(p);
end;

операторы new() и dispose() в точности соответствуют процедурам getmem() и freemem(), за исключением того, что компилитор распределяет количество байт под размер структуры, на которую ссылается переменная-указатель. По этой причине указатель должен быть типизированным указателем, и следущий код неверен:


var
p : pointer;
begin
new(p);
end;

, поскольку невозможно установить размер памяти, на которую должен ссылаться указатель. С другой стороны, если вы используете getmem() и freemem(), вы можете распределять байты для нетепизированного указателя, например:


var
p : pointer;
begin
getmem( p, 32767 );
...
freemem( p, 32767 );
end;

           


Меховое ателье, предварительная запись. Меховое ателье телефон. . минеральный утеплитель парок . приворот любимого . Духи с феромонами - духи ангел шлессер. Доска объявлений. Барахолка. . Крис браун онлайн фильмы смотреть бесплатно. Смотреть фильмы онлайн. .


Программы  |  Загрузка  |  Партнерство  |  О компании  |  Контакты

Copyright © LSD Software 2006 - 2011