Callback-функция для libusb_set_log_cb
Можно ли определить callback-функцию для libusb_set_log_cb внутри класса? Мне нужен доступ к полям класса, но если определять эту функцию внутри класса, то она не будет подходить из-за аргумента **this**
foo.h
class foo
{
...
private:
int r;
void handleLog(libusb_context *ctx, enum libusb_log_level level, const char* str);
};
foo.cpp
...
void foo::handleLog(libusb_context *ctx, enum libusb_log_level level, const char* str)
{
...
std::cout << r << "\n";
}
...
libusb_set_log_cb(..., handleLog, ...); //
Ответы (1 шт):
Автор решения: Mikhailo
→ Ссылка
Можно, но потом ее надо превратить в обычную функцию с помощью bind, указав при этом конкретный объект класса, для которого должна вызываться функция-член.