Abstractioning away main/winMain
Alex Parrill via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Fri Sep 4 21:43:18 PDT 2015
On Saturday, 5 September 2015 at 02:29:05 UTC, Prudence wrote:
> If I use functions instead of delegates it works.
>
> I suppose the problem then is that the delegate can't create a
> fat pointer when used in a static context. (i.e., why the
> functions work)
>
> The question is, then, Can I construct a delegate manually and
> supply my own context pointer?
>
> e.g.,
> class X { }
>
> void foo() { }
>
> constructDelegate(&foo, new X()) // Creates a void delegate()
> with context X
How would the X instance get passed in?
You could try this:
class X {}
void foo(X x) {}
auto x = new X();
auto dg = () => foo(x);
More information about the Digitalmars-d-learn
mailing list