
<Arturo_Cuebas@bpmicro.com> wrote in message news:OF9B966D94.6BA485A4-ON86256EF9.0063B717-86256EF9.0068EC67@bpmicro.com...
I realize interest in this has died.
Just because there haven't been any messages in the last few days doesn't mean interest is dead. People are busy with other things. (Though it's probably safe to say that interest is not huge.)
In spite of that, I'd like to throw one more thing out there to see if it generates any feedback and if not then this is the last you'll hear of this.
Does anyone like this syntax?:
overload_select<int, int, int>()(&V::f);
I think '()' look's funny :() I think Daniel James had the best idea: boost::overload<int>::resolve(&V::f)
This returns a boost::function
because my compiler (VC7.1) generates an error if I try to define a member function of a class that looks
Too heavy-weight, I think. The other proposals probably have zero runtime overhead. like
this:
//P1, P2, & P3 are template parameters of the template class. template <typename R, typename C> R (C:: * operator() (R (C::* Func)(P1, P2, P3)))(P1, P2, P3) { return Func; }
What are P1, P2, P3 ... ? Sometimes you can sneak in complex return types like so template< ... > typename mpl::identity< [put messy stuff here] >::type f( ... ); Jonathan