История изменений
Исправление asaw, (текущая версия) :
Каких костылей? Это божественная сущность введенная в c++11, у нее нет типа, и получить ее можно только конструкцией с тремя точками.
Таких костылей, как лямбда (настоящая или самописная). Хочется чтобы можно было сделать что-то вроде:
template <class T, class... Args>
std::function<void(Args...)> bind_this_(void (T::*f)(Args&&... args))
{
return std::bind(f, this, std::forward<Args>(args)...);
}
Ну так вывод шаблонных параметров только для функций работает. Поэтому нужно конструктор обернуть в функцию.
Этот трюк не прокатит, потому что переменные-члены класса с типом auto объявлять нельзя, а именно для этого всё это нужно)
Исходная версия asaw, :
Каких костылей? Это божественная сущность введенная в c++11, у нее нет типа, и получить ее можно только конструкцией с тремя точками.
Таких костылей, как лямбда (настоящая или самописная). Хочется чтобы можно было сделать что-то вроде:
template <class T, class... Args>
std::function<void(Args...)> bind_this_(void (T::*f)(Args&&... args))
{
return std::bind(f, this, std::forward<Args>(args)...));
}
Ну так вывод шаблонных параметров только для функций работает. Поэтому нужно конструктор обернуть в функцию.
Этот трюк не прокатит, потому что переменные-члены класса с типом auto объявлять нельзя, а именно для этого всё это нужно)