Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.02.27;
Скачать: [xml.tar.bz2];

Вниз

Динамические массивы внутри записи   Найти похожие ветки 

 
BOA_KAA   (2003-02-17 17:04) [0]

Вот такой вопрос возник
Допустим, есть такой набор типов данных:

type
TArr1 = array of TSomeType1;

Trec1 = record
A1: TArr1;
B: SomeType2;
end;

TA2 = array of Trec1;

var
A: TA2;


Для освобождения массива A понятно A:=nil

А вот освобождается ли при этом то, что находится в A.A1 или же до кучи надо A.A1:=nil;


 
han_malign   (2003-02-17 17:13) [1]

program dyn2;
{$APPTYPE CONSOLE}
type
TSomeType1=word;
TSomeType2=byte;
TArr1 = array of TSomeType1;

Trec1 = record
A1: TArr1;
B: TSomeType2;
end;

TA2 = array of Trec1;

var
A: TA2;
i: integer;
begin
Writeln(AllocMemSize);
SetLength(A,1001);
Writeln(AllocMemSize);
for i:=0 to 1000 do SetLength(A[i].A1,2000);
Writeln(AllocMemSize);
A:=nil;
Writeln(AllocMemSize);
end.


Результат:
0
8016
4020028
0

Делай выводы...

З.Ы. Всего две минуты на тестовое приложение...


 
BOA_KAA   (2003-02-17 17:15) [2]

Тады ОК! Сенькс!:-)



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.02.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
1-87417
Stdnet
2003-02-17 20:20
2003.02.27
Ститистика


1-87531
ProfiUgl
2003-02-17 09:41
2003.02.27
Количество лет, месяцев и дней между двумя датами


3-87285
Seacat
2003-02-07 14:39
2003.02.27
обработка курсора oracle в delphi


3-87345
Calm
2003-02-11 10:38
2003.02.27
Можно ли возвращать из ХП строку, содержащую символ #13?


7-87730
FoxSW
2002-12-26 19:55
2003.02.27
Работа с памятью на низком уровне





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский