![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 06.10.2011
Сообщений: 181
|
![]()
Есть базовый абстрактный класс (скажем Parent), от него унаследован обобщенный абстрактный класс Parent<T>, который содержит одно поле типа Т. Обобщенный класс имеет достаточно много наследников с типом T = double (Child1<double>, Child2<double> и т.д.). В классе Parent определен абстрактный метод abstract void SetValue(string src). Так вот вопрос заключается в следующем: есть ли возможность в классе BaseClass<T> написать реализацию этого метода именно под double, чтобы во всех наследниках не лепить одну и ту же реализацию?
Код:
|
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,821
|
![]()
А если T будет массивом, как базовый дабл туда запихает?
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 06.10.2011
Сообщений: 181
|
![]()
Дык это все понятно. Имеется ввиду именно частное решение для T = double. Если я правильно понимаю, то обобщения работают примерно также как и шаблоны в С++, т.е. при компиляции под конкретный тип компилируется свой класс. Так было бы неплохо, чтобы под тип double он добавил в реализацию этот метод, а под другие типы - нет.
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Непонятное поведение обобщения метода | NikitaPuper | C# (си шарп) | 4 | 20.03.2018 10:05 |
Реализация метода | greenleonardo | Помощь студентам | 0 | 20.09.2015 15:40 |
реализация метода Касиски | logorn | Помощь студентам | 1 | 18.05.2011 19:28 |
Реализация метода сканирования на C++ | Vivisektor | Общие вопросы C/C++ | 4 | 03.04.2011 12:30 |
реализация метода Хаффмана | ShturmBan | Помощь студентам | 2 | 13.01.2010 15:46 |