 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
Bruno Causse Guest
|
Posted: Tue May 24, 2005 8:47 pm Post subject: [debutant] mecanisme memoire |
|
|
bonsoir,
j'ai 3 classes A B et C
B a deux variables A.
et C un pointeur de tableau de B.
dans le constructeur de C j'ai
ptrB = new B[n];
donc je cree dans le tas un tableau de pointeur de B.
maintenant il faut que je cree les B.
je cree un A par
A = {....} donc dans la pile?
et par recopie:
for(int = 0; i
ptrB[i].premier = A;
ptrB[i].deuxieme = A;
}
ou sont les B (je supose dans le tas, mais pourquoi?)
puis que va t'il se passer quand delete[] ptrB?
qui peux m'expiquer les mecanismes.
--
Bruno Causse
http://perso.wanadoo.fr/othello
|
|
| Back to top |
|
 |
Loïc Joly Guest
|
Posted: Tue May 24, 2005 8:54 pm Post subject: Re: [debutant] mecanisme memoire |
|
|
Bruno Causse a écrit :
| Quote: | bonsoir,
j'ai 3 classes A B et C
B a deux variables A.
et C un pointeur de tableau de B.
dans le constructeur de C j'ai
ptrB = new B[n];
donc je cree dans le tas un tableau de pointeur de B.
|
Non, tu crées n objet de type B consécutifs en mémoire, et tu récupère
un pointeur sur le premier d'entre eux.
| Quote: | maintenant il faut que je cree les B.
je cree un A par
A = {....} donc dans la pile?
et par recopie:
for(int = 0; i
ptrB[i].premier = A;
ptrB[i].deuxieme = A;
}
|
Là, tu ne crées pas les B. Tu modifies les B existants pour leur mettre
des valeurs raisonables dans les champs premier et deuxième.
| Quote: | ou sont les B (je supose dans le tas, mais pourquoi?)
puis que va t'il se passer quand delete[] ptrB?
|
Les B seront détruits. Et en conséquence, les A qu'ils contiennent aussi.
J'espère que ça clarifie un peu...
--
Loïc
|
|
| Back to top |
|
 |
Bruno Causse Guest
|
Posted: Tue May 24, 2005 9:00 pm Post subject: Re: [debutant] mecanisme memoire |
|
|
Loïc Joly <loic.actarus.joly (AT) wanadoo (DOT) fr> wrote:
| Quote: | Non, tu crées n objet de type B consécutifs en mémoire, et tu récupère
un pointeur sur le premier d'entre eux.
|
oui, il est tard. je ferais mieux d'aller au lit.
--
Bruno Causse
http://perso.wanadoo.fr/othello
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|