Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2017, 13:46   #21
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

Справки у меня в Дельфи нет лет эдак... много, вобщем. Где-то когда-то скачал домой дистрибутив с установкой с жёсткого диска, он был без справки, им и пользуюсь с тех пор, а на работе вообще portable...
Ship_1 вне форума Ответить с цитированием
Старый 05.04.2017, 14:03   #22
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
Справки у меня в Дельфи нет лет эдак...
рекомендую взять там (не справка нет переходов See Also, но близко к ней (ее перевод, конечно не всей))
http://www.programmersforum.ru/showthread.php?t=120429
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 06.04.2017, 00:45   #23
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,869
По умолчанию

Цитата:
Сообщение от Ship_1 Посмотреть сообщение
Справки у меня в Дельфи нет лет эдак... много
Теперь в 21-м веке она есть у всех.

Последний раз редактировалось northener; 06.04.2017 в 02:21.
northener вне форума Ответить с цитированием
Старый 06.04.2017, 08:10   #24
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ага, только у автора Дельфи времен динозавров. Могут быть отличия.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 07.04.2017, 22:00   #25
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

А как проверить существует ли объект класса TObjectList, чтоб не удалять то чего нет?
Код:
If myObjectList<>nil then myObjectList.Free;
Так?
Ship_1 вне форума Ответить с цитированием
Старый 07.04.2017, 22:05   #26
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Если ему присвоен nil (вручную или в каких-то случаях компилятором), то да.

Вообще лучше просто создавать в самом начале и уничтожать в конце.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 07.04.2017, 22:09   #27
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

в общем-то так, но Free и так этим занимается. И именно таким же способом.
Код:
if self<>nil then self.Destroy
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 07.04.2017, 22:23   #28
Ship_1
Форумчанин
 
Регистрация: 10.02.2014
Сообщений: 526
По умолчанию

как удобно. Спасибо!
А если у меня вот такая структура: myObjectList, у которого каждый Item - это тоже subObjectList:TObjectList.
myObjectList.Free
удалит все subObjectList из памяти, или их нужно удалять по отдельности циклом по Items? (OwnsObjects = true)
И ещё... Если внутри итемов ObjectList находится безразмерный массив из real - этот безразмерный массив надо отдельно удалять из памяти с помощью SetLength(VLArray, 0) или при OwnsObjects = true myObjectList.Free и с этим справляется?

Последний раз редактировалось Ship_1; 07.04.2017 в 22:50.
Ship_1 вне форума Ответить с цитированием
Старый 08.04.2017, 01:31   #29
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,869
По умолчанию

1. удалит все subObjectList из памяти
2. надо отдельно удалять из памяти с помощью SetLength(VLArray, 0)
northener вне форума Ответить с цитированием
Старый 08.04.2017, 06:53   #30
Filka
Форумчанин
 
Регистрация: 29.10.2015
Сообщений: 273
По умолчанию

Динамический массив - тип с управляемым временем жизни, поэтому компилятор сам освобождает память...
Filka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
пытаюсь разобраться ya2500 Visual C++ 13 07.03.2013 15:32
пытаюсь разобраться Кудаив Помощь студентам 6 01.05.2012 23:04
TlistView и Tlist непоучается массово удалять выбранные обьекты... Человек_Борща Общие вопросы Delphi 4 09.01.2011 16:28
Пытаюсь разобраться в задании fs444 Microsoft Office Excel 12 12.01.2010 12:57