Ответ зависит:
Как правило, я бы рекомендовал CGrowableArray, найденный в DirectX SDK.
(Вам не нужно включать DirectX, просто удалите этот шаблон класса)
(Если вы не хотите использовать шаблон класса C ++, вы можете легко реализовать ту же логику, что и набор функций C) *
Какая польза от std :: vector?
a) Распределяет объекты по времени, используя эвристику
b) Вы можете сбросить () его, что приведет к уничтожению только содержащихся объектов, но не освободит память.
В каждом кадре вы сбрасываете () массив, затем с радостью добавляете свои объекты.
Вы платите только за звонки ctor / dtor, но (в большинстве случаев) не за выделение / освобождение звонков.
С другой стороны, если вы не собираетесь хранить реальные объекты, но указатели, навязчивый связанный список идеален. В этом случае как «Добавить» (2 назначения), так и «Очистить» (1 назначение) являются тривиальными, и никакого выделения не требуется. «Удалить» - это отдельная история, но, учитывая формулировку вашей проблемы, вам все равно это не нужно.