Bonjour à tous,
J'ai le problème suivant: j'ai une classe A qui possède une méthode qui prend en paramètre des B en const référence:
J'ai maintenant un vecteur de B* et je voudrais appliquer la méthode de A sur chacun de ces éléments:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 struct B; struct A { void method(B const& elt); };
Mon problème c'est que la méthode de A attend des const références et dans mon code décrit ci-dessus, je lui passe des adresses constantes ce qui n'est pas compatible... Auriez-vous une idée pour contourner ce problème??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 std::vector<B const*> lst; A a; std::for_each(lst.begin(), lst.end(), std::bind1st(std::mem_fun(&A::method), &a));
PS: si possible sans utiliser boost![]()
Partager