forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Blitz3D (http://forum.boolean.name/forumdisplay.php?f=45)
-   -   Вопросы: Очистка памяти, переменых. (http://forum.boolean.name/showthread.php?t=3297)

Nunan 05.05.2007 19:48

Вопросы: Очистка памяти, переменых.
 
Пишу игру...
так как игра не маленькая, то она конечно имеет меню, уровни...
иногда надо выгрузить одни данные и загрузить другие...
Спрайты и модели можно выгрузить (удалить), а вот как удалить массив переменных?? чтобы они больше не занимади места , если я их больше не собираюсь использовать.
Массивы у меня будут не маленькие поэтому они будут занимать многовато памяти.

Platon 05.05.2007 21:24

Re: Вопросы: Очистка памяти, переменых.
 
-Не морочить голову и оставлять массивы в покое до выхода из гамы
-Или удалять так: Dim Имя_Массива(0)
т.е. переопределять размер массива на нуль.

alcoSHoLiK 05.05.2007 22:15

Re: Вопросы: Очистка памяти, переменых.
 
- Использовать типы

Nunan 06.05.2007 16:09

Re: Вопросы: Очистка памяти, переменых.
 
А при использовании типов потом данные можно удалять? Как?

alcoSHoLiK 06.05.2007 18:08

Re: Вопросы: Очистка памяти, переменых.
 
Код:

type MyType
        ;...
end type

myVar.MyType = New MyType

;....

delete myVar

Если массив типов
Код:

delete each MyType

MiXaeL 09.05.2007 23:37

Re: Вопросы: Очистка памяти, переменых.
 
У меня почему-то не всегла работает delete each..., поэтому можно использовать
Код:

for myVar.MyType=each MyType
...;удаление нечисловой информаций в типе
...;например, FreeEntity myVar.model и т.д.
delete MyVar
Next

для большей надежности.

alcoSHoLiK 09.05.2007 23:43

Re: Вопросы: Очистка памяти, переменых.
 
Не знаю точно насчет блица, но Delete может сдвигать элементы, из-за чего цикл пройдется не по всем элементам. Теоретически такая конструкция должна работать:
Код:

for myVar.MyType = each MyType
  FreeEntity ...
  ; ...
Next

Delete Each MyType



Часовой пояс GMT +4, время: 00:51.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot