надо ли заботиться об уничтожении экземпляра объекта

проблема с Delphi
Язык программирования Delphi
Здравствуйте! будьте так бобры ! Объясните! (то есть надо ли использовать деструктор), если переменная которая ссылалась на этот экземпляр стала ссылаться на другой? т. е. например.
<br />
a:vector;<br />
a:=vector.create(x1,y1);<br />
{вот &quot;а&quot; стало ссылаться на один объект класса vector}<br />
a:=vector.create(x2,y2);<br />
{а теперь &quot;а&quot; стало ссылаться на другой объект класса vector}<br />

удалился ли первый объект класса из памяти? или нет? если нет то как сделать чтобы да))
где прочитать подробно про ООП в delphi/freepascal ? именно про инструменты ООП в этих средах
1 565 просмотров
добавить комментарий...
  

Люди с такой же проблемой (0)

Асик Сериккулулы
опытный
9 решений
В Delphi все классы являются потомками, по крайней мере, класса TObject, поэтому, для корректного освобождения памяти, необходимо перекрывать деструктор, используя директиву override.
В Delphi прямой вызов деструктора используется редко. Вместо него используют метод Free. Метод Free вначале проверяет существует ли уничтожаемый объект, а затем вызывает деструктор. Этот прием позволяет избегать ошибок, возникающих при обращении к несуществующему объекту.
А вот и книги по Делфи с примерами )
forcoder.ru/delphi/
Это решение полезно?   Да Нет
другие решения ожидаются

Знаете, как решить эту проблему?
Поделитесь своим знанием!

Ваш способ решения:

Наиболее похожие проблемы из этого раздела

Пытаюсь создать функцию с аргументами по умолчанию, но такой аргумент не возможно занести в объект структур D3DCOLORVALUE. При попытках разобраться ...
1 653
Здравствуйте, недавно начал заниматься c++, такой вопрос - как к строке добавить символ? пишу [code] str1[strlen(str1)] = str2[i]; [/code] - но ...
Для работы с файлами я использую функции C: fopen, fread, fwrite, fseek, ftell, fclose. fseek и ftell работают с 32-битными числами, но если файл ...
1 626
Имеются строки содержащие в себе время к примеру ""Tue Jun 22 16:40:19 +0000 2011" причем +0000 присутствует во всех строках. Хотел перевести все ...