Size: a a a

2021 April 30

rr

razumovsky r in CODE BLOG / C#
инкапсуялция — это инкапсуляция
источник

rr

razumovsky r in CODE BLOG / C#
сокрытие — это сокрытие
источник

S

Sergey Trofimov in CODE BLOG / C#
если ты в метод который принимает базщовый тип подставляешь более частный
источник

S

Sergey Trofimov in CODE BLOG / C#
это что?
источник

rr

razumovsky r in CODE BLOG / C#
даун каст, при возможности дает варик использовать сущность в контравариантных сущностях
источник

rr

razumovsky r in CODE BLOG / C#
но даун каст != контравариантность
источник

rr

razumovsky r in CODE BLOG / C#
это контравариантность
источник

S

Sergey Trofimov in CODE BLOG / C#
ну я тогда все
источник

rr

razumovsky r in CODE BLOG / C#
ну я тебе говорю о том что в шарпе ты такое проделаешь только с делегатами и интерфейсами
источник

rr

razumovsky r in CODE BLOG / C#
и теперь возвращаясь к моему первому утверждению, мы получаем что оно верно
источник

rr

razumovsky r in CODE BLOG / C#
следовательно все ок
источник

S

Sergey Trofimov in CODE BLOG / C#
какое такое? Если у меня метод принимает A, а я в него B пихаю и все норм
источник

S

Sergey Trofimov in CODE BLOG / C#
метод это же не делегат
источник

rr

razumovsky r in CODE BLOG / C#
это делегат
источник

rr

razumovsky r in CODE BLOG / C#
он контравариантнет из коробки
источник

rr

razumovsky r in CODE BLOG / C#
пихни в метод так
источник

rr

razumovsky r in CODE BLOG / C#
и получишь ошибку на этапе компиляции
источник

rr

razumovsky r in CODE BLOG / C#
странно что тебе нужно говорить о контравариантности делегатов
источник

rr

razumovsky r in CODE BLOG / C#
так что твой пример только подтвердил мои слова, как видим
источник

S

Sergey Trofimov in CODE BLOG / C#
источник