Здесь есть проблема, из-за используемых слов я боюсь.
Существует разница между указателей и указателей на функции, в первую очередь, они не должны быть одинакового размера.
Поэтому для определения адреса указателя функции используется неопределенное поведение void*
.
В целом, на C++ не рекомендуется использовать void*
. Они необходимы в C из-за отсутствия надлежащей системы типов, но система типа C++ намного более развита (хотя и не так развита, как последние языки).
Возможно, вы, возможно, выиграете от некоторой объективации. Если вы сделаете свой метод экземпляром класса (шаблона), вы можете получить этот класс из общего базового класса. Это довольно часто, эти объекты называются Функциями.
Однако, без точного описания вашей проблемы, будет трудно помочь больше.