DIP6: Attributes
Sergey Gromov
snake.scaly at gmail.com
Tue Aug 4 07:56:49 PDT 2009
Tue, 04 Aug 2009 22:46:22 +1000, Daniel Keep wrote:
> Sergey Gromov wrote:
>> Tue, 04 Aug 2009 17:22:50 +1000, Daniel Keep wrote:
>>
>>> Don wrote:
>>>> ...
>>>>
>>>> A question: in C#/Java, can you have annotations on function pointer and
>>>> delegate declarations?
>>>>
>>>> void foo( int delegate(int) pure dg) {
>>>> ...
>>>> }
>>>> What would this look like with annotations?
>>> Well, Java doesn't HAVE delegates and C# doesn't (AFAIK) allow you to
>>> define them inline; they have a special declaration syntax that can't be
>>> used in an expression.
>>
>> C#:
>>
>> List<int> ls;
>> ls.Sort((x, y) => y - x);
>>
>> or
>>
>> ls.Sort((x, y) => { int a; a = y; a -= x; return a; });
>
> That's not a delegate type, that's a delegate literal.
Sorry, you said: "C# doesn't ... allow you to define them (delegates)
inline". Delegate literal *is* an inline definition of a delegate.
What you say now is that C# doesn't allow to define a delegate type
inside a function which is definitely true and is very annoying.
More information about the Digitalmars-d
mailing list