170 похожих чатов

Как задать условие на дженерик, чтобы возможно было подставлять только

наследников указанного класса?

12 ответов

15 просмотров

where не помогает?

Fil-Romanov Автор вопроса
Egor Gusarenko
where не помогает?

where T : ИмяКласса Это позволяет впихнуть и сам класс, а не только его наследников. Условие на "только наследники указанного класса". Ключевое слово "только" =(

Fil Romanov
where T : ИмяКласса Это позволяет впихнуть и сам к...

А верхнии по иерархии класс нельзя сделать абстрактным?

Fil-Romanov Автор вопроса
Egor Gusarenko
А верхнии по иерархии класс нельзя сделать абстрак...

нет. в проект залезть не могу и менять в нём что-то.

Fil Romanov
нет. в проект залезть не могу и менять в нём что-т...

Тогда интерфейс-трейт -наверное Пусть все классы которые ты хочешь прокинуть реализуют только этот дополнительный интерфейс

Fil-Romanov Автор вопроса
Egor Gusarenko
Тогда интерфейс-трейт -наверное Пусть все классы ...

в реализацию классов залезть не могу. костылить с адаптером для такого функционала звучит костыльно)

Fil Romanov
в реализацию классов залезть не могу. костылить с ...

Ну, трейт который "необходимо" реализовать для того чтоб пройти ограничение дженерика не таким уж костылем звучит на самом деле Но мне кажется что мы тут уже и так Подстановку Лисков нарушаем чисто тем что такой кейс возник, если уж про костыли говорим, так что...

Fil-Romanov Автор вопроса
Egor Gusarenko
Ну, трейт который "необходимо" реализовать для тог...

ой, с солит перчит вообще не знаком) но спасибо

Fil Romanov
where T : ИмяКласса Это позволяет впихнуть и сам к...

интересный кейс, звучит как-то не очень ООП-шно)

Сергей
интересный кейс, звучит как-то не очень ООП-шно)

Это больше механика трейтов чем классическое наследование

Зачем такое вообще нужно?

where T : MyBaseClass

Похожие вопросы

Обсуждают сегодня

У меня это всегда вопрос вызывало.. Нафига писать код так, чтобы потом ошибки вылавливать?
Nik
44
Всем привет. Сейчас я изучаю erlang по книге Erlang and OTP in action. Дошел до главы где реализуется первый gen server на примере tcp rpc сервера. Меня очень сильно смутил ко...
Freezing Death
10
что за асемблер кста?
Shvabrikk Nya
19
Добрый день! Пробую отловить исключение EConvertError: function _TryTextToDouble(var DoubleVar: Extended; Text: String): Boolean; begin try DoubleVar := StrToFloat...
Kirill Filippenok
19
всем привет. реально ли понять чем в процессе занята память? delphi/linux, процесс свой
Handatros
12
Подскажите... Есть ли название у способа разработки кода, в котором: сперва пишут минимальную рабочую структуру: Напр. ввод, обработка, вывод, контроль. Потом эту структуру д...
Budemposmotret
6
В дизассемблере вижу, что строки пихают в регистры через lea, почему так, а не через mov?
Oleg
8
А где @Grinyaha уважаемый пропал?
Am Ambrion
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Сделал краткий обзор магазина из статьи и заодно там же записал инструкцию по развёртыванию. https://www.youtube.com/watch?v=8-sE1vNk95Q (чё думаете по звуку? кое-что поменял...
Andrey K
17
Карта сайта