Problem with templates
    BCS 
    ao at pathlink.com
       
    Mon Jul  7 10:30:29 PDT 2008
    
    
  
Reply to Sean,
>> It can't.  Delegates and functions currently have different calling
>> conventions and the compiler cannot automatically convert one to the
>> other. Was this just intuition or did you read that it would
>> somewhere?
>> 
> Take this example:
> 
[...]
> void main()
> {
> int plus(int x, int y, int z)
> {
> return x + y + z;
> }
> auto plus_two = Curry(&plus, 2);
> 
> Notice how the function Curry accepts a delegate, but a function
> pointer is actually passed in. I have personally re-written this
> function to take advantage of D2 closures and it worked perfectly
> fine.
> 
taking the address of a (non static) nested functions generates a delegate, 
not a function pointer.
    
    
More information about the Digitalmars-d-learn
mailing list