Je travaille sur de tres grand tableau d'objet, (de l'ordre de 10000 objet par tableau).
Mais, je sais pas trop my prendre, pour agrandir et reduire la taille
d'un tableau ! je me suis donc fait des fonction, mais je perd en
rapidité, et augmente en bug!! Voici ce que j'utilise en ce moment!!
int population=10000;
LIFE * unit[population];
//-----------------
for (i=0;i<population;i++) // initialisé le tableau de LIFE
unit[i]=new LIFE(..);
//----------------
unit = new LIFE (population-1) //ajouter une vie!
population++;
//---------------
for (int i=index;i<population-1;i++) //decaler le tableau
unit[i] =
unit[i+1];
//enleve une vie
population --;
//-----------------
Yaurai pas des librairies qui se charge de tout ca?
Dinon, le coup du decalage de tt le tableau, pour enlever un objet, c'est long, y a pas mieux? Merci
moi je te conseille de faire une liste chainée ;) comme ca tu peux enlever ou ajouter des objet a l infini (enfin facon de parler).
sinon s tu a pas envie d utiliser la stl qui est kan meme bien naze he bien tu redimensionne ton tableau toi meme puis tu copie ton ancien tableau dedan et tu le suprimer (c ce que vector fait je crois mais ac une syntaxe purrave :p pas taper ).
voila amuse toi bien ;)
si tu veux plus d info sur les listes chainées demande je serai heureux de t aider.
C'est vrai que la syntaxe de la STl peut paraître bizarre au premier
abord, mais ces méthodes sont optimales à condition de ne pas coder
avec les pieds(oui, vector fait des recopies bourrin si on fait plein
de réallocations, sauf si on fais gaffe en codant et qu'on pense a
faire de simples reserve() ) Et de plus on se fait très vite à sa
syntaxe, elle est logique.
la classe list ,qui est justement une liste chainée, te permettra de
faire celà avec une complexité optimale, proprement, et sans problème
de mémoire.
Enfin, chacun fait ce qu'il veut, si tu ne veux pas l'utiliser, je le respecte.