Мне нужно создать класс, скажем, FineStack
, который должен объявить структуру, способную управлять различными видами штрафов (LightFine
, SeriousFine
).Суперкласс для обоих: Fine
.
Вопрос в том, нужны ли мне шаблоны?Я думал, что в этом нет необходимости, поэтому я подумал:
-> Объявить Fine *fines
;(своего рода массив штрафов?) И ... создавая массив объектов Fine
(суперкласс), он должен иметь возможность управлять объектами LightFine
и SeriousFine
.
-> Проблема в том.Как мне это объявить?Fine
должен быть абстрактным классом, поэтому экземпляры не могут быть созданы (экземпляры должны быть LightFine
или SeriousFine
).
Я застрял с этим, так как не могу найти способ его получить.Здесь, в Stackoverflow, я прочитал несколько вопросов, которые вы, ребята, обычно предлагаете использовать std::vector
, что упрощает управление такими вещами.
Должен ли я пойти таким путем и забыть об оригиналеидея?
Мне нужна структура, которая должна быть в состоянии обрабатывать любой объект из обоих подклассов, в любом порядке (скажем .. 3 LightFine
и 2 SeriousFine
... или альтернативно друг друга изначало до конца структуры ... что угодно.