Форум: "Основная";
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];
ВнизЛюди!!! Ткните мне, пожалуйста, пальцем в утечку памяти. Найти похожие ветки
← →
Fantasist (2002-04-07 02:21) [11]Хе-хе. Здорово!
Вот тут Делфи над вами со своей удобной(!) строкой и издевается. :)
Для начала - строка в Делфи - это указатель. Но компилятор все за вас делает так, что вам кажеться что это обыкновенная переменная.
Теперь, возми и вначале процедуры:
procedure TForm1.Button1Click(Sender: TObject);
сделай sizeof(p^). Сделай это и в конце этой процедуры, и сравни размеры. Они одинаковые! А куда же делась память, которую ты выделил для каждой строки? Ага, вот то-то и оно. Твой:
ttry1=array[1..4096] of string; - это массив указателей, и когда ты радостно грохаешь его в своем dispose, то освобождается ровно 4*4096 байт. А все строки остаются висеть в памяти. Не круто ли. :)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.004 c