Я хочу, чтобы мой код был расширяемым, таким образом, что во время выполнения я создаю объекты.Динамическая инстанция в C++
Например, у меня есть класс бакалеи, у которого есть множество фруктов, и я хочу заполнить этот массив фруктов предметами, которые происходят из фруктов.
class Fruit{
};
class Grocery{
std::vector<Fruit*> m_fruits;
};
class Apple: Fruit{
};
class Pineapple: Fruit{
};
Теперь во время выполнения Я хочу, чтобы мой класс Бакалея вектор m_fruits
наполняться класса объектов компании Apple и ананаса. Так что это возможно в некотором роде.
Если я добавлю еще один плод в качестве клубники в будущем, его объект будет создан и добавлен к вектору Grocery динамически без изменения реализации класса Grocery?
Код help будет оценен.
Это домашнее задание? –
используйте указатели, или вы получите нарезанные фрукты ... (google «C++ slicing») – smerlin
@smerlin: могу ли я уменьшить ваш комментарий за плохое наказание? =] ... или по крайней мере обрезать его с сайта? – Sniggerfardimungus