redimensionner un tableau.
redimensionner un tableau.
Salut.
J'ai une question.
J'ai un tableau dont je veux gérer le nombre d'entités dynamiquement pour des problèmes de mémoire.
Au début le tableau sera dimensionné avec 1 élement.
A chaque fois qu'on ajoute une entité, le tableau augmentera de 1 composant.
A chaque fois qu'on supprime une entité, le tableau se réduit de 1 composant.
Le problème est le suivant.
Si j'utilise Dim MonTableau( NouvelleValeur )
Il supprime automatiquement le contenu de tout mon tableau de 0 à NouvelleValeur (que NouvelleValeur soit supérieur ou inférieur à l'ancienne dimension du tableau.
Y aurait-il une façon d'éviter cela ?
Merci.
J'ai une question.
J'ai un tableau dont je veux gérer le nombre d'entités dynamiquement pour des problèmes de mémoire.
Au début le tableau sera dimensionné avec 1 élement.
A chaque fois qu'on ajoute une entité, le tableau augmentera de 1 composant.
A chaque fois qu'on supprime une entité, le tableau se réduit de 1 composant.
Le problème est le suivant.
Si j'utilise Dim MonTableau( NouvelleValeur )
Il supprime automatiquement le contenu de tout mon tableau de 0 à NouvelleValeur (que NouvelleValeur soit supérieur ou inférieur à l'ancienne dimension du tableau.
Y aurait-il une façon d'éviter cela ?
Merci.
Soit tu utilises les listes chaînées, ce qui est le plus pratique, soit il faut que tu crées un second tableau pour stocker ce qui se trouve dans le premier, puis tu redimensionnes le premier, et tu recopies le second dans le premier.
Entre les deux, y a pas photo, les listes chaînées sont gagnantes.
Entre les deux, y a pas photo, les listes chaînées sont gagnantes.
-
- Messages : 1500
- Inscription : jeu. 25/mars/2004 11:23
- Localisation : Sophia Antipolis (Nice)
- Contact :
Ou utiliser ma Lib Vector
Je mettrai la nouvelle version bientot en ligne (encore plus optimisée et avec des nouvelles fonctions...)
Liens de l'ancienne : Lib Vector (avec la liste des confions quelle contient...)


Je mettrai la nouvelle version bientot en ligne (encore plus optimisée et avec des nouvelles fonctions...)
Liens de l'ancienne : Lib Vector (avec la liste des confions quelle contient...)

Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Participez à son extension: ajouter vos programmes et partagez vos codes !
je pensai comme toi avant de faire mon PUREGOLOfreddix a écrit :mouais ... c'est quand même plus complêxe qu'un simple Dim
une liste chainéé c'est en faite une pile !!!
quant t'a compris ça t'as tout compris !!
tu cree ta liste , ensuite tu pose tes elements dedans
une simple boucle FOREACH -NEXT pour lire tout les element un par un
ou bien tu peut lire l'element que tu choisi , comme si des livres etaient rangé
dans une bibliotheque , et que t'en prend un au hasard , (sauf que dans une liste c'est comme ci tu pouvais lire ton livre sans le sortir du rayonnage

franchement met toi y , c'est tres simple ...
j'ai vraiment du mal a reutiliser les tableaux maintenant !

le tableau reste la reference pour les données multi-dimentionnelles

-
- Messages : 1500
- Inscription : jeu. 25/mars/2004 11:23
- Localisation : Sophia Antipolis (Nice)
- Contact :
Par contre, tout est en global : listes et tableaux ...
Fred, ca sera modifié dans la V4 ???
Fred, ca sera modifié dans la V4 ???

Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Participez à son extension: ajouter vos programmes et partagez vos codes !
C'est très bien, que ce soit global!lionel_om a écrit :Par contre, tout est en global : listes et tableaux ...
Fred, ca sera modifié dans la V4 ???
Moi, j'espère que ça le restera, même si on peut les rendre locales par une déclaration.
Et pour ce cas précis, que ce soit tableau ou liste, c'est pour mettre dans une dll. Alors Local ou Global ne change pas grand-chose.
-
- Messages : 1500
- Inscription : jeu. 25/mars/2004 11:23
- Localisation : Sophia Antipolis (Nice)
- Contact :
Oui, mais on est obligé de réécrire des algos pour chaque liste de chaque projet, alors que des fois c'ets les même, sauf qu'il n'y a qu'à changer le nom.
C'est pour ça que j'ai programmé ma Lib Vector, j'arrête pas de m'en servir. Je code les fonctions une fois, et op... Je suis tranquil pour toujours.
Tandis que si c'était local, on pourrait créer des fonctions, les distribuer plus facilement sur le forum...
C'est pour ça que j'ai programmé ma Lib Vector, j'arrête pas de m'en servir. Je code les fonctions une fois, et op... Je suis tranquil pour toujours.
Tandis que si c'était local, on pourrait créer des fonctions, les distribuer plus facilement sur le forum...
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Participez à son extension: ajouter vos programmes et partagez vos codes !