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

Вниз

Размещение в памяти   Найти похожие ветки 

 
Sers   (2002-10-29 12:18) [0]

Что-то я запутался.

Если я делаю так:

procedure MyProcedure;
var edit : TEdit;
begin
edit:=TEdit.Create(nil);
end;

1. Где отводится память под edit - в динамической памяти, или в стеке ?
2. Соответственно, при выходе из процедуры, память освободится или нет ?


 
Anatoly Podgoretsky   (2002-10-29 12:27) [1]

Под ссылку в стеке, а остальное может быть в разных местах, что есть динамическая память, осводится только место под ссылку.


 
MBo   (2002-10-29 12:29) [2]

не освободится, только ссылка потеряется


 
Sers   (2002-10-29 12:33) [3]

То есть, как я понял при входе в процедуру в стеке отводится под ссылку память. При

edit:=TEdit.Create(nil);

под объект выделяется еще память.

При выходе из процедуры память занятая в стеке под ссылку освобождается, а та память, которая была выделена под объект не освобождается. То есть, это так называемая утечка памяти.

Я правильно понял ?


 
MBo   (2002-10-29 12:35) [4]

Да, абсолютно


 
Anatoly Podgoretsky   (2002-10-29 12:42) [5]

Абсолютно, а что бы этого не происходило - освобождай


 
Sers   (2002-10-29 12:47) [6]

В принципе я так и подозревал. Дело в том, я решил попробовать Bounds Checker v6.03 По идее, он должен отлавливать такие моменты. Если я подсовываю ему прогу откомпилированную C++ Builder"ом то все нормально - он замечет такие вещи. С прогой, откомпилированной с помощью Дельфи - не фига.

Может Bounds Checker не может работать с exe-шниками, полученными Дельвей.

В ProjectOptions-> Include DebugInformation галочка стоит, оптимизауия отключена, в чем же дело ?


 
VaS   (2002-10-29 12:52) [7]

[x] Include TD32 debug info



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

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

Наверх




Память: 0.45 MB
Время: 0.008 c
1-21591
andre_nik
2002-10-29 16:29
2002.11.07
метод show для форм


1-21581
Начинающий делфер
2002-10-30 07:41
2002.11.07
Проблема с выводом!!!


14-21815
Anatoly Podgoretsky
2002-10-20 09:22
2002.11.07
Именинники 20 октября


1-21603
Stream2k
2002-10-25 18:40
2002.11.07
Как по нажатию SpeedButton загрузщить файл file1.htm в браузер...


3-21374
CashDi
2002-10-17 15:11
2002.11.07
Установка клиента





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский