Без полного определения foo
на этот вопрос невозможно ответить. Однако вот некоторые мысли ...
Вероятно, хорошей идеей будет обернуть myDynamicArray
внутри некоторой формы безопасного указателя, возможно, std :: auto_ptr или в случае, если foo
может сохранить ссылку на указатель, std :: tr1 :: shared_ptr.
Если только вызов конструктора / функции foo
не приводит к выделению дополнительной памяти, нет оснований полагать, что увеличение количества итераций цикла должно каким-либо образом повлиять на использование памяти во время выполнения программ.
Наконец, как вы контролируете использование памяти программой во время выполнения? Наблюдение за числами в диспетчере задач Windows (или его эквиваленте) не является особенно надежным решением, вы можете попробовать вручную отследить все выделения памяти (переопределив new / malloc), чтобы получить истинное представление о том, когда, где и сколько памяти используется. выделено в кучу.