J'ai une classe dont la fonction de membre que j'essaie de pointer, problème est que je continue d'obtenir cette erreur reference to non-static member function must be called
qui à mon sens est qu'une fonction de membre doit être souligné. Le problème est, lorsque je tente d'utiliser la solution this, le compilateur se plaint parce que there is no viable conversion from 'void (Foo::*) (const List&) to std::function<void (const List &)>
Functor -> référence à la fonction de membre non statique doit être appelée
Ceci est mon Foo
classe:
class Foo {
public:
int Run(int port);
void HandleRequest(HTTPServerRequest* request);
private:
int num_ports;
void callback_method(const List&);
}; //class Foo
void Foo::HandleRequest(HTTPServerRequest* request){
std::function<void (const List&)> functor = callback_method;
}
merci! fonctionne comme un charme. J'ai utilisé la première option. Pouvez-vous m'expliquer s'il vous plaît? –
vous pouvez voir ceci: [link] (http://fr.cppreference.com/w/cpp/utility/functional/bind) –