Показать сообщение отдельно
Старый 17.09.2005, 09:18     # 3
PSyton
Junior Member
 
Аватар для PSyton
 
Регистрация: 19.04.2002
Адрес: Дом
Пол: Male
Сообщения: 187

PSyton Популярный человек на этом форумеPSyton Популярный человек на этом форумеPSyton Популярный человек на этом форумеPSyton Популярный человек на этом форумеPSyton Популярный человек на этом форумеPSyton Популярный человек на этом форумеPSyton Популярный человек на этом форумеPSyton Популярный человек на этом форуме
Даествительно мутно написано.
Зачем делать прослойку, если контейнер содержит только вектор?
просто создаешь где надо
vector <Figure*> contaniner;

contaniner.push_back(new Line());
contaniner.push_back(new Circle());
...
contaniner.push_back(new Cube());

При этом абстаркатный класс Figure должен содержасть виртуальные методы, которые будут переопределны у потомков. И тогда конструкция типа
contaniner[10]->Drow();
будет замечательно работать.
Если есть какие-то специфичные методы, которые присущи только некоторым потомкам Figure, то можно заветси метод IsKindOf(), который будет говорить о том что это за потомок, после чего можно безболезненно приводить указтель к типу указателя на нужного потомка и работать.
__________________
Дураки не динозавры - они не вымрут...
PSyton вне форума