Bonjour,

je désire utiliser for_each pour appliquer une fonction membre de ma classe A à tous les les objets contenus dans une liste.
Je suis sous VC6.

Ainsi je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
void A::Foo(int x)
{
	return;
}
 
class B
{
std::list<A*> m_liste;
...
};
 
void B::PourTous(int x)
{
std::for_each(m_liste.begin(), m_liste.end(), std::bind2nd(std::mem_fun_ref(&A::Foo), x));
}
Mais j'obtiens cette erreur :
error C2784: 'class std::mem_fun_ref_t<_R,_Ty> __cdecl std::mem_fun_ref(_R (__thiscall _Ty::*)(void))' : could not deduce template argument for '<Unknown>' from 'void (__thiscall A::*)(int)'
Qu'est-ce que je fais d'incorrect ?

@+