![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Участник клуба Подтвердите свой е-майл
Регистрация: 26.01.2008
Сообщений: 1,899
|
![]()
Есть
Код:
Код:
Код:
Как правильно очистить Record? |
![]() |
![]() |
![]() |
#2 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,544
|
![]() Цитата:
Код:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 25.12.2017 в 09:43. |
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
MyRecord: TMyRecord уже у вас объявлен в памяти
FillChar(MyRecord, SizeOf(MyRecord), 0); Не на какую память не повлияет Для вашего спокойствия можно так FillChar(Pointer(MyRecord)^, SizeOf(TMyRecord), 0); либо так Finalize(Pointer(MyRecord)^); А если бы вы сами выделяли память например так Код:
Последний раз редактировалось Aliens_wolfs; 25.12.2017 в 09:54. |
![]() |
![]() |
![]() |
#4 | ||
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]() Цитата:
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 25.12.2017 в 10:31. |
||
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
Ну тогда так для строк
Код:
Код:
Последний раз редактировалось Aliens_wolfs; 25.12.2017 в 10:40. |
![]() |
![]() |
![]() |
#6 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
что подтверждает сказанное выше:
Цитата:
он и обязан следить за корректностью заполнения и очистки. И использовать "хакерские" способы очистить память нужно крайне осторожно и аккуратно. (а лучше вообще не использовать ![]() в данном случае вполне достаточно: Код:
|
|
![]() |
![]() |
![]() |
#7 | |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]() Цитата:
Ну а со строковыми согласен в ручную их обычно мало бывает По отдельности чистить много переменных это запара и что то можно пропустить. Тогда наверное лучше задавать самому в память MyRecord и ложить например в TList и TListObject для контроля и массива, а потом ее просто уничтожать Код:
Последний раз редактировалось Aliens_wolfs; 25.12.2017 в 11:58. |
|
![]() |
![]() |
![]() |
#8 | ||||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,544
|
![]() Цитата:
написать для этого Код:
Код:
Цитата:
Цитата:
Цитата:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 25.12.2017 в 12:11. |
||||
![]() |
![]() |
![]() |
#9 | ||
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]() Цитата:
Цитата:
Последний раз редактировалось Aliens_wolfs; 25.12.2017 в 12:17. |
||
![]() |
![]() |
![]() |
#10 | |||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,544
|
![]() Цитата:
Цитата:
Цитата:
был FillChar -- получили описанное выше. изменили структуру --> изменили процедуру очистки. именно поэтому(не только) и появились классы (структура ВМЕСТЕ с процедурами для их обработки).
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 25.12.2017 в 12:27. |
|||
![]() |
![]() |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Очистить массив | Shouldercannon | Общие вопросы Delphi | 3 | 24.12.2017 22:07 |
Использование record в record | Anton911 | Общие вопросы Delphi | 7 | 03.05.2012 08:49 |
очистить $_POST[] | BaiAs | PHP | 2 | 24.01.2011 15:47 |
В чём различие записей Record от Packed Record? | Terran | Общие вопросы Delphi | 7 | 08.06.2010 17:14 |
Record / Packed Record | Alex Cones | Общие вопросы Delphi | 7 | 11.11.2009 10:43 |