Pular para o conteúdo

Erro callback com métodos

Responder tópico
  • Denunciar
  • Indicar

1. Erro callback com métodos

Enviado em 25/05/2013 - 21:44h

Olá pessoal, estou com dificuldades, em usar callback em métodos, sei que posso usar métodos estáticos, mas esses não tem acesso aos membros da classe, mesmo se passasse um ponteiro para a classe como argumento ele estaria privado de algumas coisas, o que eu quero é utilizar um método comum(privado, publico ou protegido), para isso utilizei a seguinte sintaxe:


ClasseDoMetodo* ptr_cls;
void (ClasseDoMetodo::*metodo)(void* param, int cont_param);
void* param;
int cont;

//Mudando de direção
void MudarCallBack(ClasseDoMetodo* ptr_cls, void(ClasseDoMetodo::*metodo)(void*, int), void* param, int cont)
{
///Atribuições ...
}

void Usar()
{
(ptr_cls->*metodo)(param, cont);
}
agora tentando adcionar o método

...
this->ObjetoDaClasseDoCallback.MudarCallBack(this, this->metodo, NULL, 0);
...
o que tem de errados nos parametros passados? ela pede um método dessa classe, e eu isso que eu passo, o compilador acusa: no matching function for call to 'ClasseDoCallBack::MudarCallBack(ClasseDoMetodo*, <unresolved overloaded function type>, NULL, int)'

se alguém puder ajudar eu agradeço.

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder