Address of overloaded functions
Artur Skawina
art.08.09 at gmail.com
Wed Jul 3 09:52:56 PDT 2013
On 07/03/13 18:24, H. S. Teoh wrote:
> On Wed, Jul 03, 2013 at 06:07:07PM +0200, Artur Skawina wrote:
>> The context dependence isn't ideal, but what's the alternative?...
> [...]
>
> Explicit syntax for specifying overloads? ;-) Not like that would happen
> in D, though.
Real Programmers need no special syntax :)
import std.stdio;
void foo(int a){ writeln("overload int"); }
void foo(long b){ writeln("overload long"); }
auto pickOverload(alias FP, A...)() @property { typeof(FP(A.init)) function(A) fp = &FP; return fp;}
void main()
{
auto b = pickOverload!(foo, long);
b(2);
}
But using the context to automatically figure out the right
overload make some things easier; it's just that eg the lhs of
an assignment affecting the result of the rhs-expression doesn't
/feel/ right.
artur
More information about the Digitalmars-d-learn
mailing list