1 / 1 / 0
Регистрация: 20.03.2013
Сообщений: 8
1

Нужно ли самому удалять память?

02.04.2013, 15:31. Показов 578. Ответов 5
Метки нет (Все метки)

Есть record:

Delphi
1
2
3
4
type 
    TMyRec = packed record
       FByteArray: array of Byte;
    end;
Используем ее:

Delphi
1
2
3
4
5
6
7
8
9
10
procedute Proc;
var
  Tmp: TMyRec;
begin
   SetLength(Tmp.FByteArray, 100);
   // Работаем с ним
 
  // Поле работы обязательно делать
  SetLength(Tmp.FByteArray, 0); // - ?
end;
Использую Delphi XE2.
В Qt четко написано, что освобождать память не надо, а вот для Delphi такой рекомендации не нашел.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.04.2013, 15:31
Ответы с готовыми решениями:

Нужно ли самому удалять экземпляр класса, унаследованного от QThread?
Привет! Есть класс, унаследованный от QThread с макросом Q_OBJECT, создаю я этот экземпляр при...

Нужно ли удалять память в visual basic после создания
Здравствуйте. Не подскажете нужно ли удалять память в visual basic, после создания данных...

Dll на C++ кушает память, как правильно удалять и освобождать память?
Добрый день, совсем мало опыта в программировании на C++, помогите пожалуйста знатоки С++. Есть...

Как корректно освобождать память (удалять) объектов GDI+?
Ну собственно вопрос в шапке. Например есть Image *img; Как его правильно удалить, чтоб избежать...

5
192 / 173 / 37
Регистрация: 19.01.2010
Сообщений: 610
Записей в блоге: 1
02.04.2013, 16:03 2
Вы можете как освобождать таким способом так и не освобождать...Дело в ваших интересах. Ибо "засерать" память или свобождать ее когда она не нужна) Для малых программ не играет роли...Дальше могут быть проблемы. Есть еще способы очистки массивов с указанием значения nil

Использую Delphi XE2.
В Qt четко написано, что освобождать память не надо, а вот для Delphi такой рекомендации не нашел.
0
2648 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,725
02.04.2013, 16:06 3
Дин.массивы относятся к типам данных с управляемым компилятором временем жизни.

В данном конкретном случае компилятор сам позаботится о деаллокации ресурсов, занятых массивом.
0
192 / 173 / 37
Регистрация: 19.01.2010
Сообщений: 610
Записей в блоге: 1
02.04.2013, 16:12 4
Цитата Сообщение от mss Посмотреть сообщение
Дин.массивы относятся к типам данных с управляемым компилятором временем жизни.

В данном конкретном случае компилятор сам позаботится о деаллокации ресурсов, занятых массивом.
В плане закрыл программу - массив сам очистился?
0
2648 / 2270 / 279
Регистрация: 24.12.2010
Сообщений: 13,725
02.04.2013, 16:19 5
Цитата Сообщение от leejack Посмотреть сообщение
закрыл программу - массив сам очистился?
Речь у ТС идет не о закрытии программы, а о завершении выполнения процедуры, использующей локально объявленный дин.массив.

А при закрытии программы уже без разницы успеет ли программист явно или компилятор неявно очистить что-то там - ОС сама вернет в свои закрома все занятые процессом (рухнувшим аварийно или завершившимся штатно) ресурсы.
0
192 / 173 / 37
Регистрация: 19.01.2010
Сообщений: 610
Записей в блоге: 1
02.04.2013, 16:34 6
mss, А, ну ясненько) Я так и думал, поэтому и уточнил)))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.04.2013, 16:34

Оперативная память забита кучей не нужных программ. Как очистить, что удалять?
Я зачеркнул программы предназначение которых я знаю, скажите пожалуйста для чего нужны оставшиеся...

MFC - нужно ли самому следить за удалением подчиненных окон?
Вопрос такого сорта... class CChildWindow : public CWnd { CChildWindow(CWnd* parent); }...

Есть ли административная панель в Joomla или ее нужно писать самому?
Я прохожу учебный материал по Joomla 2.5 и при создании сайта я не вижку что создается админка для...

Нужно ли удалять оставшиеся от программы пакеты?
К примеру, я скачал программу через центр приложений, вместе с ней установились разные необходимые...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.