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

  FORUM HardWare.fr
  Programmation
  C++

  chainage d'appel surcharge operator

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

chainage d'appel surcharge operator

n°1939224
Glock 17Pr​o
Posté le 09-11-2009 à 23:18:12  profilanswer
 

Code :
  1. class VisualizableVector
  2. {
  3. public:
  4. class proxy
  5. {
  6. public:       
  7. proxy (vector<int> *v) : vect (v)
  8. {
  9.   std::cout << "Before size is: " << vect->size ();
  10. }
  11. vector<int> * operator -> ()
  12. {
  13.   return vect;
  14. }
  15. ~proxy ()
  16. {
  17.   std::cout << "After size is: " << vect->size ();
  18. }
  19. private:
  20. vector <int> * vect;
  21. };
  22. VisualizableVector (vector<int> *v) : vect(v) {}   
  23. proxy operator -> ()
  24. {
  25. return proxy (vect);
  26. }
  27. private:
  28. vector <int> * vect;
  29. };


 

Code :
  1. int main()
  2. {
  3.   VisualizableVector vector (new vector<int> );
  4.   vector->push_back (10);
  5. }


 
//vector->push_back (10);
 
vector.operartor ->() et aprés ? comment l'operator -> de l'objet proxy est appelé ??
 
(vector.operator ->()).operator ->()
 
comment le compilo arrive à faire ça tout seule comme un grand ? merci


Message édité par Glock 17Pro le 09-11-2009 à 23:20:10

---------------
.
mood
Publicité
Posté le 09-11-2009 à 23:18:12  profilanswer
 

n°1939258
Joel F
Real men use unique_ptr
Posté le 10-11-2009 à 07:01:02  profilanswer
 

-> a un comportement spécial qui fait que les appels se chainent tous seul.
 

Citation :


A pointer dereference operator must be a member function. It has additional, atypical constraints: It must return an object (or reference to an object) that also has a pointer dereference operator, or it must return a pointer that can be used to select what the pointer dereference operator arrow is pointing at.


 
de Thinking in C++

n°1939262
Glock 17Pr​o
Posté le 10-11-2009 à 07:50:35  profilanswer
 

nice

n°1939373
bjone
Insert booze to continue
Posté le 10-11-2009 à 12:37:32  profilanswer
 

Tiens je connaissais pas ce cas particulier :)


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

  chainage d'appel surcharge operator

 

Sujets relatifs
syntaxe : operator T&() const;[SOAP]Appel d'une fonction depuis un client de web service
japplet petit soucis d'appel :/Appel d'url via un programme en C++
bouton d'appel dynamique dans excel[Résolu]pb compilation operator ++
Appel AJAX qui s'effectue trop de fois (event JS)Renvoyer un fichier Xml après appel d'un WCF
[STRUTS]Envoyer un formulaire valide a partir d'une action Struts [OK]Probleme de surcharge operateur <<
Plus de sujets relatifs à : chainage d'appel surcharge operator


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR