[sigc] std::function<> and std::bind() in libsigc++



As a result of the discussion in
https://mail.gnome.org/archives/libsigc-list/2013-July/msg00007.html
I have at last pushed a libsigc++ commit, where I explain how std::function<> can be used in libsigc++, and why it's not that easy to use std::bind().
https://git.gnome.org/browse/libsigc++2/commit/?id=49e753a7e2d2ce85bc090da47b80c78a24c065d6

I said in July that std::function should be mentioned wherever lambda expressions are mentioned. That's not exactly what I've done. I've realized that std::function can be an alternative to a sigc::slot rather than an alternative to a lambda expression.

As is now explained in the documentation of sigc::signal<>::connect(), the problem with std::bind() is that it creates a functor whose operator()() is a variadic template. SIGC_FUNCTORS_DEDUCE_RESULT_TYPE_WITH_DECLTYPE can't deduce the result type of such a functor. I've no idea how (or if) that can be fixed.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]