Bonjour,

J'ai une question à propos de l'utilisation des pointeurs.

J'ai une méthode définie comme cela :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
void Classe1::GestionTAB1(float* tab)
{
tab[0]=1;
}
Elle est utilisée de la manière suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
void main()
{
float* tableau;
int i=50;
tableau=new float[100];
Classe1::GestionTAB1(&tableau[i]);
//cela a pour effet : tableau[50]=1; je crois
}

Maintenant, j'ai une nouvelle méthode définie comme cela:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
void Classe1::GestionTAB2(float*& tab)
{
tab[0]=1;
}
Je voudrais remplacer la méthode GestionTAB1 dans main par la méthode
GestionTAB2
J'ai essayé :
Classe1::GestionTAB2(tableau); ca marche mais ca a pour effet : tableau[0]=1; alors que je voudrais avoir tableau[50]=1;

J'ai donc essayé : Classe1::GestionTAB2(&tableau[i]); mais ca ne compil pas.
de meme Classe1::GestionTAB2(tableau + i); ne compil pas.

Comment faire?
Je voudrais passer comme argument à la méthode GestionTAB2, le tableau "tableau"
à partir de l'indice i.

Merci de votre aide