Есть такой кот:
#inculde <functional>
using namespace std::placeholders;
struct A
{
using Callback = std::function<int(int value)>;
void someFunc(Callback callback) {
}
};
struct B
{
B() {
A a;
a.someFunc(std::bind(&B::func, this, _1));
}
void func(int value) {
}
};
Понятное дело, кот не компилируется, ибо сигнатура коллбэка и B::func различаются возвращаемым значением. Вопрос - можно биндами такое обойти? Лямбду не хочется юзать, ибо громоздко получается.