Ponteiro para funcionar na função de membro

Eu quero usar uma biblioteca (nlopt) que tem uma função set_min_objective que leva um ponteiro para uma função numérica myfunc e encontrar o seu mínimo. Gostaria de criar uma classe que contenha uma função de membro adequadamente inicializada. set_min_objective encontraria um ótimo em uma instância específica (myP no exemplo abaixo). A sequência de chamadas é:

opt.set_min_objective(myfunc, NULL);

e eu gostaria de usar algo como:

opt.set_min_objective(myP.f, NULL);

o erro que recebo ao compilar isso é:

main.cpp: In function 'int main()':
main.cpp:79:34: error: no matching function for call to 'nlopt::opt::set_min_objective(<unresolved overloaded function type>, NULL)'
../lib/nlopt.hpp:335:10: note: candidates are: void nlopt::opt::set_min_objective(double (*)(unsigned int, const double*, double*, void*), void*)
../lib/nlopt.hpp:342:10: note:                 void nlopt::opt::set_min_objective(double (*)(const std::vector<double>&, std::vector<double>&, void*), void*)
../lib/nlopt.hpp:368:10: note:                 void nlopt::opt::set_min_objective(double (*)(unsigned int, const double*, double*, void*), void*, void* (*)(void*), void* (*)(void*))

Qual seria a solução mais simples para ter set_min_objective aceita myP.f como um ponteiro normal para funcionar? Note que myP.f e myfunc têm os mesmos argumentos e tipos de valor de retorno.

Obrigado,

JD

questionAnswers(1)

yourAnswerToTheQuestion