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:
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);
};
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
 
std::vector<B const*> lst;
A a;
std::for_each(lst.begin(), lst.end(), std::bind1st(std::mem_fun(&A::method), &a));
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??
PS: si possible sans utiliser boost