Сообщение Курьёз от Липперта от 16.12.2016 17:30
Изменено 16.12.2016 17:31 Don Reba
public class A<T> {
public class B : A<int> {
public void M() { System.Console.WriteLine(typeof(T)); }
public class C : B { }
}
}
public class P {
public static void Main() { (new A<string>.B.C()).M(); }
}
public class A[T] {
public class B : A[int] {
public M() : void { System.Console.WriteLine(typeof(T)) }
public class C : B {}
}
}
A.[string].B.C().M()
Удивился, что C# и Nemerle дают разные ответы.
Курьёз от Липперта
http://www.dotnetcurry.com/csharp/1292/eric-lippert-interview
Удивился, что C# и Nemerle дают разные ответы.
public class A<T> {
public class B : A<int> {
public void M() { System.Console.WriteLine(typeof(T)); }
public class C : B { }
}
}
public class P {
public static void Main() { (new A<string>.B.C()).M(); }
}
public class A[T] {
public class B : A[int] {
public M() : void { System.Console.WriteLine(typeof(T)) }
public class C : B {}
}
}
A.[string].B.C().M()
Удивился, что C# и Nemerle дают разные ответы.