Posso obter o objeto de propriedade de um parâmetro de modelo de função de membro?
Dado um objeto:
struct foo {
void func();
};
Agora, dada a declaração da função de modelo:
template<typename T, T F>
void bar();
assimbar
assumirá uma função de membro da seguinte forma:
bar<decltype(&foo::func), &foo::func>()
No corpo debar
Eu quero recuperar o tipofoo
deT
. Posso fazer isso? Eu quero ser capaz de fazer algo assim:
get_obj<T> myfoo;
(myfoo.*F)();
Eu sei dissoget_obj
não é uma coisa, mas haveria uma maneira de escrevê-la?