Double pointeur ?

Messages postés
192
Date d'inscription
mercredi 26 décembre 2001
Statut
Membre
Dernière intervention
31 janvier 2007
- - Dernière réponse : cs_JCDjcd
Messages postés
1138
Date d'inscription
mardi 10 juin 2003
Statut
Membre
Dernière intervention
25 janvier 2009
- 30 juil. 2003 à 09:47
que signifi le ** dans

CCamera **CameraList;

jai bcp de difficulté avec les pointeurs lol
Afficher la suite 

2 réponses

Messages postés
547
Date d'inscription
mercredi 8 janvier 2003
Statut
Membre
Dernière intervention
7 octobre 2007
1
0
Merci
Bonjour,

c'est un pointeur vers un pointeur sur une donnée de type CCamera.
on utilise ce type de pointeur pour alouer dynamiquement un tableau de pointeurs sur des classes ou structures.

CCamera** CameraList;

// Allocation de la liste
CameraList = new (CCamera*)[5];

// Allocation des classes CCamera
for (int i = 0; i < 5; i++)
CameraList[i] = new CCamera();

// Destruction des classes CCamera
for (int i = 0; i < 5; i++)
delete CameraList[i];

// Destruction de la liste
delete [] CameraList;

A+

Fred
Commenter la réponse de fredcl
Messages postés
1138
Date d'inscription
mardi 10 juin 2003
Statut
Membre
Dernière intervention
25 janvier 2009
2
0
Merci
ou sinon, su tu veux qu'une fonction change la valeur de CameraList, :

fonction(CCamera **CameraList)
{
*CameraList = NewValeurADefinir;
}

ainsi cette fonction change le valeur de coucou dans l'exemple suivant :

CCamera *coucou;
fonction(&coucou);

ainsi coucou est CCamera *
DOnc &coucou est CCamera **

C'est une autre application de pointeur de pointeur !

:-p :-p :-p :shy) :-p :-p :-p :shy) :-p :-p :shy)
:shy) :-p :shy) :shy) :-p :shy) :shy) :shy) :-p :shy) :-p
:shy) :-p :shy) :shy) :-p :shy) :shy) :shy) :-p :shy) :-p
:-p :-p :shy) :shy) :-p :-p :-p :shy) :-p :-p :shy)
Commenter la réponse de cs_JCDjcd