Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3271 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Surcharge de []

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Surcharge de []

n°1600343
casafa
Posté le 17-08-2007 à 10:46:05  profilanswer
 

Bonjour,
 
Je n'arrive pas à surcharger l'opérateur [], voici mon code :
 

Code :
  1. class A
  2. {
  3. B &operator [](int i);
  4. std::vector<B *> var;
  5. };


 
Et le code de la surcharge :

Code :
  1. B &A::operator [](int i)
  2. {
  3. return var[i];
  4. }


 
L'erreur retourné par g++ :

invalid initialization of reference of type «B&" from expression of type «B*"


 
Merci d'avance...

mood
Publicité
Posté le 17-08-2007 à 10:46:05  profilanswer
 

n°1600344
Taz
bisounours-codeur
Posté le 17-08-2007 à 10:48:15  profilanswer
 

bah c'est pas le bon type ...

n°1600360
Joel F
Real men use unique_ptr
Posté le 17-08-2007 à 11:37:19  profilanswer
 

What about :

 
Code :
  1. class A
  2. {
  3. public:
  4. B &operator [](int i);
  5.   private:
  6. std::vector<B> var;
  7. };
  8. B &A::operator [](int i)
  9. {
  10. return var[i];
  11. }
 

ou alors si tu veux un vector<B*> , il te faut renvoyer un B*& masi c'ets moche


Message édité par Joel F le 17-08-2007 à 11:38:16

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Surcharge de []

 

Sujets relatifs
surcharge de l'opérateur =Surcharge de l'opérateur = + Appel non souhaité à delete
Surcharge d'opérateur sur des structuresSurcharge de constructeur en PHP
Surcharge de méthodesSurcharge d'une méthode appartenent à un patron de classe
surcharge opérateur [ ]Surcharge =
Surcharge d'opérateursurcharge de l'operateur >>
Plus de sujets relatifs à : Surcharge de []


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)