Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.18;
Скачать: CL | DM;

Вниз

Очистка памяти   Найти похожие ветки 

 
Zeon ©   (2004-04-02 16:48) [0]

Кто знает как можно очистить всю память(всех переменных) программы. То есть обнулить вообще все переменные, естественно не обнуляя каждую из них непосредственно. Нужно что бы все переменные стали такими, как при запуске программы.


 
Reindeer Moss Eater ©   (2004-04-02 16:50) [1]

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


 
Digitman ©   (2004-04-02 16:50) [2]

переменная переменной - рознь


 
Digitman ©   (2004-04-02 16:52) [3]

где-там, в "Потрепаться", бродит один хлопчик, некто Ironhawk, так вот он не один год искал ответ на оч похожий вопрос... говорит. что нашел ... ты б попытал его на эту тему


 
YurikGl ©   (2004-04-02 16:53) [4]

Делаешь инициализацию всех переменных в отдельной функции и вызываешь ее по мере надобности


 
PVOzerski ©   (2004-04-02 17:00) [5]

Или часть переменных (только не длинные строки и не дин.массивы) объявить как поля record"а. А потом fillchar"ом его, этот record :^). Но при малейшей неаккуратности с указателями жди утечек памяти.


 
Юрий Зотов ©   (2004-04-02 17:02) [6]

> Zeon ©   (02.04.04 16:48)

Вот ответ на Ваш вопрос в ТОМ виде, в котором Вы его задали:
//Суперпупермегаобнулялка:
ZeroMemory(Pointer(0), High(Cardinal));


А если спрашивать нормально, то ответ такой: напишите процедурку, которая инициализирует нужные переменные - и вызывайте ее, где хотите и сколько хотите.


 
WebError   (2004-04-02 17:15) [7]


> Zeon ©   (02.04.04 16:48)

Кстати, а Зеон пишется так:
XEON :))))


 
WebError   (2004-04-02 17:18) [8]


> Юрий Зотов ©   (02.04.04 17:02) [6]

Разве ZeroMemory((Pointer(0), High(Cardinal)) обнулит все переменные, и причём здесь Pointer(0). Если это правда, то объясните почему так происходит! 8)


 
PVOzerski ©   (2004-04-02 17:27) [9]

>Разве ZeroMemory((Pointer(0), High(Cardinal)) обнулит все переменные, и причём здесь Pointer(0).
Нет, будет Access Violation. Следуй совету YurikGl ©   (02.04.04 16:53) [4] :^)))


 
Anatoly Podgoretsky ©   (2004-04-02 17:34) [10]

Очистить нельзя, можно только запачкать другим.


 
Serginio666   (2004-04-02 17:56) [11]

Исследуй менеджер памяти
http://www.rsdn.ru/article/Delphi/memmanager.xml

Все что есть в нем очищай!!!!!
Ну а стек еще легче, а вот с другими кучами сложнее. Кроме того очистке могут подвергнуться и указатели на выделенные системные ресурся, но если очень хочется то МОЖНО.



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

Текущий архив: 2004.04.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.025 c
8-1072621227
Mkrivun
2003-12-28 17:20
2004.04.18
Как на канву вывести текст вертикально?


3-1080104496
Максим
2004-03-24 08:01
2004.04.18
Вычленение данных из строки


7-1076866144
AVGVI
2004-02-15 20:29
2004.04.18
Учетные записи в W2K


14-1079808990
Sergey Masloff
2004-03-20 21:56
2004.04.18
Чудеса женской интуиции


1-1080732046
TATIANA
2004-03-31 15:20
2004.04.18
Модальная форма - кнопка "ОК" - Edit