30 lines
315 B
C#
30 lines
315 B
C#
|
using System;
|
||
|
|
||
|
interface IA
|
||
|
{
|
||
|
}
|
||
|
|
||
|
class C : IA
|
||
|
{
|
||
|
void Foo<T> () where T : class, IA
|
||
|
{
|
||
|
Func<T, T> m = l => {
|
||
|
T i = default (T);
|
||
|
if (l == i) {
|
||
|
Func<T> m2 = () => i;
|
||
|
m2 ();
|
||
|
}
|
||
|
|
||
|
return i;
|
||
|
};
|
||
|
|
||
|
m (null);
|
||
|
}
|
||
|
|
||
|
public static int Main ()
|
||
|
{
|
||
|
var c = new C ();
|
||
|
c.Foo<C> ();
|
||
|
return 0;
|
||
|
}
|
||
|
}
|