Bonjour à tous, suite à la lecture de ceci

Evite comme la peste les membres et structures dont le noms est préfixé par l'underscore " _ " (ou le double underscore " __ " ).

Il s'agit de termes propres à l'implémentation que tu utilise, et il n'est pas du tout impossible qu'ils n'existent simplement pas si tu vient à changer de compilateur, voire, simplement, de version de la bibliothèque que tu utilise.
J'ai donc un petit problème avec std::bind. J'utilise des choses réservées à l'implémentation pour déterminer le type de retour de std::bind.
Voici le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
typedef std::_Maybe_wrap_member_pointer<Fc> __maybe_type;
typedef typename __maybe_type::type __functor_type;
typedef std::_Bind<__functor_type(Args...)> ResultFunctorType;
Avec ResultFunctorType le type de retour.
Comment puis-je avoir ce type de manière portable ?
J'ai trouvé ce code dans functional de gcc4.5 Mingw après une recherche google non fructueuse.

Merci à tous.