Bonjour,

J'ai une classe A contenant une fonction membre f() que je souhaiterais appeler dans un boost::thread, et une callback() (�galement fonction membre de A) que je souhaiterais passer en attribut � f(). Mon appel se fait depuis la classe A.

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
void A::callback()
{
   std::cout << "test";
}
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
void A::f(std::function<void()> refCallback)
{
   // fait des trucs
   refCallback();
}
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
std::function<void()> f1 = boost::bind(&A::f, this);
boost::thread t = boost::thread(boost::bind(&A::f, this), f1);
Le compilateur me renvoit l'erreur suivante :
boost/bind/mem_fn.hpp(342): error C2298: 'return'*: op�ration non conforme sur pointeur vers expression de fonction membre
Savez-vous ce que j'ai mal fait dans mon code ?

Merci beaucoup