Bonjour,
Je souhaite créer une classe dont une variable d'instance est un tableau de 5 entiers (int tab[5]). Le dernier de ces 5 entiers a une signification bien particulière (appellons le "last" et sera accedé par les methodes de ma classe beaucoup plus souvent que les autres. Pour que mon code soit plus clair, je souhaite utiliser la variable "last" plutot que "tab[4]" pour acceder à cet entier.
Mais last, C'EST tab[4], j'ai donc pensé à utiliser une référence. Seulement je ne sais pas comment l'initialiser:
Si je réduit le code au minimum:
message d'erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 class A { private: int tab[5]; int& last; public: A(); }; A::A() { last = tab[4]; } int main(void) { return 0; }
Ou dois-je initialiser "last"?error C2758: 'A::last' : must be initialized in constructor base/member initializer list
Ou: est-ce une mauvaise idée d'utiliser une référence? et dams ce cas que faire à la place?
merci
Partager