Bonjour,
J'ai, dans un objet que j'ai créé, surchargé l'opérateur ().
J'utilise cet objet à travers un shared_ptr. Comment peut on utiliser l'opérateur () surchargé?
Merci
Bonjour,
J'ai, dans un objet que j'ai créé, surchargé l'opérateur ().
J'utilise cet objet à travers un shared_ptr. Comment peut on utiliser l'opérateur () surchargé?
Merci
Ca devrait marcher avec shared_ptr aussi (je n'ai pas Boost installé en ce moment).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 My* ptr = new My; ptr->operator()();
Ouai donc on perd l'intérêt de la surcharge de l'opérateur. il n'y a donc aucun moyen d'arriver à un truc du genre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 My* ptr = new My; ptr();
Et comme ça ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 boost::shared_ptr<A> ptr(new A); (*ptr)(); // ou (*ptr)(args, ...);
Oui effectivement... J'avais cru le tester... Shame on me!
Merci!
Partager