|
Модераторы: Poseidon, Snowy, bems, MetalFan |
|
AlekXL |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 92 Регистрация: 2.5.2008 Репутация: нет Всего: 0 |
Предположим, у нас есть генерализованный базовый класс, наподобие TStream, обеспечивающий некоторый уровень функционала, а в деталях полагающийся на специализированных наследников, скажет TFileStream.
у нас нет прямого доступа к коду обоих классов: это чужие классы, которые не хотелось бы модифицировать. Кроме того , специализированный класс наперед неизвестен. Но есть нужда расширить неспециализированный функционал базового класса, прежде всего, перекрывая виртуальные методы. Возможно ли это? Делал ли кто-нибудь такое? |
|||
|
||||
k0rvin |
|
|||
Опытный Профиль Группа: Участник Сообщений: 442 Регистрация: 24.1.2010 Репутация: 1 Всего: 5 |
А почему ты просто не унаследуешь класс от TFileStream и переопределишь нужные методы?
-------------------- “Object-oriented design is the roman numerals of computing.” — Rob Pike All software sucks |
|||
|
||||
CodeMonkey |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 38 Всего: 89 |
Да, возможно.
Добавлено через 3 минуты и 12 секунд P.S. Подмену не всего класса целиком, а чисто одного виртуального метода можно сделать на базе кода этой заметки. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |