Использование std::bind для передачи функции-члена класса в качестве указателя на функцию [дубликат]C++

Программы на C++. Форум разработчиков
Anonymous
Использование std::bind для передачи функции-члена класса в качестве указателя на функцию [дубликат]

Сообщение Anonymous »

Я пытаюсь передать функцию-член класса в функцию в качестве обратного вызова. Я нашел много вещей, которые показывают std::bind (я бы предпочел это сделать именно так), но безуспешно.

Код: Выделить всё

#include 

class testFn {

void fn() {};
void foo(void*()) {};

void setfooptr() {
foo(std::bind(&testFn::fn,this));
}
};

int main() {
return 0;
}
Вы можете найти мой код здесь: https://godbolt.org/z/Khjbbdnra
Я получаю эту ошибку: ошибка: невозможно преобразовать ' std::_Bind_helper::type' в 'void* (*)()
Это кажется, это должно быть легко, но Очевидно, я делаю что-то не так.
Буду очень благодарен за любую помощь.

Подробнее здесь: https://stackoverflow.com/questions/793 ... on-pointer

Вернуться в «C++»