|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : janvier 2013 Messages : 3 ![]() |
Bonjour,
je débute en c++, j'ai besoin d'aide concernant les pointeurs et les adresses. En fait j'ai une variable de type structure que je veux sauvegarder son adresse mémoire et pouvoir récupérer cette adresse pour afficher le contenu de la variable plut tard. Code :
|
||
|
|
00
|
|
|
#2 | ||||
|
Membre chevronné
![]() ![]() Inscription : décembre 2008 Messages : 490 ![]() |
Tu es sûr d'être au point sur la distinction entre pointeur et objet pointé ?
Plutôt que tes 3 premières lignes (qui provoquent une fuite mémoire) tu devrais avoir quelque chose comme : Code :
Code :
|
||||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : janvier 2013 Messages : 3 ![]() |
Bonjour,
Tout d'abord, je vous remercie pour votre réponse. en fait, root est une variable qui change dans la suite du code. ce que je veux faire c'est de sauvegarder l'adresse du premier root pour pouvoir récupérer ces informations (energie, echelle, ...), c'est pour ça je fais: tree_node* saveroot; saveroot= &root; |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : janvier 2013 Messages : 3 ![]() |
mais comme root change, j'ai remarqué que saveroot change aussi au fur et a mesure.
avez vous une solution ? |
|
|
00
|
|
|
#5 | |
![]() ![]() Cyrille Network programmer Inscription : juin 2010 Messages : 1 551 ![]() |
Bonjour,
Citation:
Evidemment que saveroot change puisque saveroot est un pointeur sur root, autrement dit saveroot c'est juste une façon d'accéder à root, à elle et rien d'autre, pas une copie mais l'originale ! Que veux-tu faire en fait ?? A priori ce n'est pas de conserver un pointeur; tout au plus une copie mais ça a du sens ? |
|
|
|
00
|
|
|
#6 |
|
Invité régulier
![]() Inscription : juin 2010 Messages : 24 ![]() |
Tu peux utiliser une collection d'objet de type tree_node ou tree_node* genre une liste ?
|
|
|
00
|
|
|
#7 | |
|
Membre Expert
![]() ![]() Inscription : novembre 2008 Messages : 973 ![]() |
Sauf quand on fait du très bas niveau, on ne devrait JAMAIS avoir à traiter des adresses.
Si tu veux conserver l’adresse d’une variable pour la réutiliser plus tard, ma foi, ça ressemble bien à un pointeur cette affaire. Mais ce n’est pas ton problème : Citation:
Accessoirement, suivant où et comment root est alloué, un pointeur sur celui-ci est super louche --> dès que root sera détruit, le pointeur sera invalide.
__________________
HADOPI - Le Net en France : black-out |
|
|
|
00
|
Copyright © 2000-2013 - www.developpez.com