Главная страница
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.042 c
7-1072302409
shluz
2003-12-25 00:46
2004.04.18
модель винчестера по метке тома


3-1079687625
Denis_Visma
2004-03-19 12:13
2004.04.18
Вставка записей в Представление


1-1081007953
Mefodiy
2004-04-03 19:59
2004.04.18
Разница реакций Windows 98 и Windows X на Sleep и Delay


11-1062341908
Кладов
2003-08-31 18:58
2004.04.18
Версия 1.84


8-1066990862
TRyaSS
2003-10-24 14:21
2004.04.18
3-d в Delphi(OpenGL , Direct X)