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

Вниз

   Найти похожие ветки [Освобождение переменной]

 
Kair ©   (2004-06-04 19:03) [0]

Написал класс

TMyClass = class(TObject)
...
end;

TMyCoolClass = class(TMyClass)
...
end;

var
 A: TMyCoolClass;
begin
A := TMyCoolClass.Create();
...
A.Free;
end;

Переменная "A" остается занятой... Как правильно освобождать?
Проверял через if Assigned(A) и if A <> nil...

P.S.: WinAPI приложение.


 
GuAV ©   (2004-06-04 19:08) [1]


> Переменная "A" остается занятой...

Мусор там в никуда она указывает

> Как правильно освобождать?

FreeAndNil


 
GuAV ©   (2004-06-04 19:13) [2]


> FreeAndNil

а tсли проверять не надо то и Free сойдет


 
Anatoly Podgoretsky ©   (2004-06-04 19:18) [3]

Никак все переменные, кроме локальных остаются до конца работы приложения.


 
GuAV ©   (2004-06-04 19:24) [4]

Anatoly Podgoretsky ©   (04.06.04 19:18) [3]
как всега, в вопрос не вчитался...
переменная А - локальная и будет освобождена.


 
GuAV ©   (2004-06-04 19:26) [5]

хотя...
> Как правильно освобождать?
намёка на то что нужно освобождать саму переменную, а не выделенную память вроде нет


 
Anatoly Podgoretsky ©   (2004-06-04 19:37) [6]

GuAV ©   (04.06.04 19:24) [4]
Ну еще на такую мелочь тратиться, будет просто забыта


 
AlexG ©   (2004-06-04 19:59) [7]


> Kair


> Переменная "A" остается занятой... Как правильно освобождать?
> Проверял через if Assigned(A) и if A <> nil...

Переменная не может быть занятой. М.б. занятой память, на которую ссылается переменная. После освобождения в переменной м.б. любое число, не обязательно ноль, но это мусор. Поэтому, если далее предполагается проверка значения переменной для определения состояния, когда она не ссылается на отведенную память, нужно переменной присвоить значение NIL. Иначе, скорее всего, произойдет ошибка, которую потом будет трудновато найти...


 
Mim1 ©   (2004-06-05 15:39) [8]

- Hа самом деле, самого дела нет. В самой деятельности заключена самость
дела - и наоборот. Hаоборот получим оборот на, и таким образом перевернем
образ. Я уже не говорю о природе говора в роде при уже. Ужи и узы - вы меня
понимаете, мистер Андерсон?
- Конечно, я так и думал, Смит. Дайте еще затянуться...



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

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

Наверх




Память: 0.46 MB
Время: 0.033 c
1-1086690330
TEXHAPb
2004-06-08 14:25
2004.06.20
Чертовщина с TStringList.Objects


14-1085930017
Petr V. Abramov
2004-05-30 19:13
2004.06.20
Всем писателям операционных систем!


1-1086581187
SkyRanger
2004-06-07 08:06
2004.06.20
Запись в файл


1-1086617490
пришелец
2004-06-07 18:11
2004.06.20
Как правильно присоединить модуль? 8)


14-1086069462
Леприкон
2004-06-01 09:57
2004.06.20
Настораживает qwe8264.dll





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