Bonjour Tout le monde,

j'ai un problem que je n'arrive pas a resoudre, je voudrai appeler la methode "overrided" de la classe derivée depuis la classe de base :

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
17
18
19
20
21
22
23
24
25
26
27
class Base{
	public: 
		void start(){
			new thread(boost::bind(&Base::run, this));
		}
 
		void go(){
			// do something
		}
 
}
 
 
class Derived : public Base {
	public:
		void go(){
			//do something different
		}
}
 
 
int main(int argc, char** argv){
	Derived* der = new Derived();
	der->start();
 
	return 0;
}
dans ce code j'obtient toujour le go() de la classe Base, ce que je veux c'est avoir le run() de la classe Derived, est-ce que c'est possible ?

apparement c'est le boost bind qui pose probleme, vue que je lui passe Base::run en argument,

merci d'avance pour votre aide.

Cdlt