Décharger des variables de la mémoire? [Résolu]

Radiohead4ever 71 Messages postés samedi 7 février 2004Date d'inscription 21 novembre 2006 Dernière intervention - 23 juil. 2005 à 22:00 - Dernière réponse : Radiohead4ever 71 Messages postés samedi 7 février 2004Date d'inscription 21 novembre 2006 Dernière intervention
- 24 juil. 2005 à 00:06
Voici le code :



<HR>
Option Explicit
Public Type Obj
be As Boolean
solid As Boolean
objText As String
objMat As String
geo As String
posX As Single
posY As Single
posZ As Single
rotation As R3DVector3D
transparent As Boolean
colorkey As Boolean
End Type

Public Cubik(1 To 125000) As Obj



<HR>

Durant mon jeu, je remplis les "sous-variables" de mes cubik(1 to 125000). Mais ces sous-variables ne sont utiles que pour une seule "map"... Lorsque je change de monde, je doit toutes les redéfinir à neuf et là est mon problème.. Comment recommencer à neuf? C'est à dire, comment faire pour "détruire" tous mes cubiks et toutes leurs "sous-valeurs" pour ensuite les recharger avec la nouvelle map? Je sais comment recharger, mais je sais pas comment détruire.. ou plutot "vider", afin que ca ne prenne pas de mémoire pendant le jeu. Merci de votre aide !

Voici ce que j'ai esseyé jusqu'à présent :

<HR>
Public sub Dechargement()

Dim i as integer
For i = 1 to 125000

Cubik(i) = Nothing 'De ces trois essais, rien ne fonctionne...
Cubik(i) = Null
Cubik(i) = Empty

Next i
End Sub
Afficher la suite 

4 réponses

cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 23 juil. 2005 à 23:23
+3
Utile
Salut
Gobillot a raison.
Par contre, je pense qu'un tableau défini 'en dur' ne peut pas être redéfini avec Redim.
Il va falloir déclarer ton tableau dynamiquement pour l'utiliser comme ça :
A la place de Redim Cubik(1 To 125000) As Obj
Utilise Public Cubik() As Obj
Et dans ta Sub Main ou dans ton premier Form_Load, dimensionne :
Redim Cubik(1 To 125000)
C'est cette même commande que tu réutilisera pour vider ton tableau.

Pour être complet, Redim Preserve Cubik(1 To 125000) permettrait de changer le format du tableau tout en préservant le contenu de chaque index, sauf bien sûr si la quantité diminuait.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
(je
Cette réponse vous a-t-elle aidé ?  
Radiohead4ever 71 Messages postés samedi 7 février 2004Date d'inscription 21 novembre 2006 Dernière intervention - 23 juil. 2005 à 22:10
0
Utile
Je me suis trompé, ce que j'ai esseyé est plutôt :

<HR>
Public sub Dechargement()

Dim l as Long
For l = 1 to 125000

Cubik(i) = Nothing 'De ces trois essais, rien ne fonctionne...
Cubik(i) = Null
Cubik(i) = Empty

Next l
End Sub
Gobillot 3140 Messages postés vendredi 14 mai 2004Date d'inscription 31 mars 2015 Dernière intervention - 23 juil. 2005 à 22:12
0
Utile
Redim Cubik(0)



ou



Erase Cubik





Daniel
Radiohead4ever 71 Messages postés samedi 7 février 2004Date d'inscription 21 novembre 2006 Dernière intervention - 24 juil. 2005 à 00:06
0
Utile
Merci beaucoup ! Très complet comme réponse

RadioHead4Ever

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.