Вопросы с тегом «contravariance»

4
Почему ковариация и контравариантность не поддерживают тип значения
IEnumerable<T>является ко-вариантом, но не поддерживает тип значения, только ссылочный тип. Приведенный ниже простой код успешно скомпилирован: IEnumerable<string> strList = new List<string>(); IEnumerable<object> objList = strList; Но переход от stringк intполучит скомпилированную ошибку: IEnumerable<int> intList = new List<int>(); IEnumerable<object> objList = intList; Причина объясняется в MSDN : Дисперсия применяется только к …


4
Почему пример не компилируется, иначе как (со-, противо- и не-) дисперсия работает?
Исходя из этого вопроса , может кто-нибудь объяснить в Scala следующее: class Slot[+T] (var some: T) { // DOES NOT COMPILE // "COVARIANT parameter in CONTRAVARIANT position" } Я понимаю различие между +Tи Tв объявлении типа (оно компилируется, если я использую T). Но тогда как на самом деле написать класс, …

2
Проблема понимания ковариационной контравариантности с дженериками в C #
Я не могу понять, почему следующий код C # не компилируется. Как видите, у меня есть статический универсальный метод Something с IEnumerable<T>параметром (и Tон должен быть IAинтерфейсом), и этот параметр не может быть неявно преобразован в IEnumerable<IA>. Какое объяснение? (Я не ищу обходной путь, просто чтобы понять, почему это не …

3
Объяснение ковариации, инвариантности и контравариантности простым языком?
Сегодня я прочитал несколько статей о ковариантности, контравариантности (и инвариантности) в Java. Я читал статьи в Википедии на английском и немецком языках, а также некоторые другие сообщения в блогах и статьи IBM. Но я все еще немного не понимаю, о чем они? Некоторые говорят, что это связано с отношениями между …

2
Как универсальная ковариация и контравариантность реализованы в C # 4.0?
Я не был на PDC 2008, но услышал новости о том, что C # 4.0 объявлен для поддержки универсальной ковариантности и контр-дисперсии. То есть List<string>можно назначить List<object>. Как такое могло быть? В книге Джона Скита « C # in Depth» объясняется, почему универсальные шаблоны C # не поддерживают ковариацию и …

3
Приведите примеры функций, которые демонстрируют ковариацию и контравариантность в случаях как перегрузки, так и переопределения в Java? [закрыто]
Закрыто . Этот вопрос должен быть более конкретным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он фокусировался только на одной проблеме, отредактировав этот пост . Закрыт 5 лет назад . Уточните этот вопрос Пожалуйста, покажите хороший пример ковариации и контравариантности в Java.

2
Понимание ковариантных и контравариантных интерфейсов в C #
Я встречал их в учебнике по C #, который я читаю, но мне трудно их понять, вероятно, из-за отсутствия контекста. Есть ли хорошее краткое объяснение того, что они из себя представляют и для чего они полезны? Отредактируйте для пояснения: Ковариантный интерфейс: interface IBibble<out T> . . Контравариантный интерфейс: interface IBibble<in …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.