Question sur les pointeurs
Bonjour,
J'ai une question à propos de l'utilisation des pointeurs.
J'ai une méthode définie comme cela :
Code:
1 2 3 4
| void Classe1::GestionTAB1(float* tab)
{
tab[0]=1;
} |
Elle est utilisée de la manière suivante :
Code:
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:
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:)