Здравствуйте, Doc, Вы писали:
Doc>Повторюсь — берите Компоновщик.
_>>и получить на выходе методы присущие только данному устройству — дверь(методы — открыть, закрыть), шкаф(методы — цвет, типдерева), лампа(методы — включить, получитьяркость).
Doc>В определенный момент приводить к заданному типу. Т.е. все объекты получат общий интерфейс для работы с ними (перебор, поиск, добавление, удаление и т.д.), но при необходимости можно обратиться и как конкретному типу.
Поискал примеры компоновщика — да, действительно он позволяет создать виртуальную структуру, однако я не нашел примера, как мне обратиться к конкретному члену данной структуры и получить его конкретные методы. Все что описано — как добавить элемент в структуру и как удалить.