
On Fri, 02 Nov 2007 09:47:14 +0100, gchen <chengang31@gmail.com> wrote:
Marco wrote:
A new release of boost overload is out.
[...]
You can read more about boost overload here: http://docs.google.com/Doc?id=dhd386mp_16gxsfxn The documentation was kindly written down by Dean Michael Berris.
Looks interesting. Just one naive question...
If a overload variable can be set any function, why bother giving it a signature when declaring it? Why not just:
overload<> f; // or simply boost::overload f;
f.set(&int_sum); // here automatic signature f.set(&float_inc); // deduction occurs
f.set(&any_function);
Well the reason is that we can deduce the signature but then we have to store the passed argument in a function pointer of the correct type ( == with the correct signature ), otherwise we can't use it to forwarding a call to the function it points to. The issue is that the deduction occurs at run time, while we need to know the correct type at compile time. Marco -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/