Динамически выделенные ресурсы необходимо освобождать при любой модели их организации, будь то куча, стек или еще что-то. Ключевой момент здесь в том, что имеет место динамическое выделение, а куча или не куча - дело десятое.