Re[4]: Паттерн "или"
От: Jack128  
Дата: 23.04.23 20:32
Оценка:
Здравствуйте, nikov, Вы писали:

N>Здравствуйте, VladD2, Вы писали:


TB>>>Только какой тип у этого x внутри блока? B или C?


VD>>Наиболее частный общий.


N>Он может быть неоднозначным, например, у них могут быть несколько общих интерфейсов, не связанных друг с другом. Или, например, у контравариантных делегатов Action<Array> и Action<IList<object>> есть общий базовый тип MulticastDelegate, но он не самый специфичный. Потому что у них ещё есть более узкие общие базовые типы Action<string[]>, Action<string[][]> (и много других), но ни один из них не является более специфичным чем другой, хотя они все более специфичны, чем MulticastDelegate.


Подобная ситуация например при выборе перегрузок. Как то же компилятор решает эту проблему, вот и в подобном паттерне мог бы туже логику использовать.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.