Перевод блога Эрика Липперта
Browse by Tags
All Tags »
Covariance and Contravariance (RSS)
-
Еще один интересный вопрос со StackOverflow : uint[] foo = new uint[10]; object bar = foo; Console.WriteLine("{0} {1} {2} {3}", foo is uint[], // True foo is int[], // False bar is uint[], // True bar is int[]); // True Что за ерунда тут происходит? Этот Read More...
|
-
Вот хороший вопрос со StackOverflow : Если у вас есть метод, принимающий «X», то вы должны передавать выражение типа X или что-то, приводимое к X . Скажем, выражение производного от X типа. Но если у вас есть метод, принимающий «ref X», то вы обязаны Read More...
|
-
[ДОПОЛНЕНИЯ ниже] Некоторое время назад я описал вид вариантности, который мы поддерживаем, начиная с C# 2.0 . При присваивании группы методов делегату такого типа, что и выбранный метод, и делегат возвращают ссылочный тип, то разрешено ковариантное преобразование. Read More...
|