Por que você desejaria alocar memória no heap em vez da pilha? [duplicado]

Duplicata Possível:
Quando é melhor usar uma pilha em vez de uma pilha e vice-versa?

Eu li algumas das outras questões sobre o heap vs stack, mas elas parecem se concentrar mais no que o heap / stack faz do que em porque você as usaria.

Parece-me que a alocação de pilha quase sempre seria preferida, já que é mais rápida (apenas movendo o ponteiro da pilha x procurando espaço livre no heap), e você não precisa liberar manualmente a memória alocada quando terminar de usá-la . A única razão pela qual posso ver o uso da alocação de heap é se você deseja criar um objeto em uma função e usá-lo fora desse escopo de funções, pois a memória alocada da pilha é automaticamente não alocada depois de retornar da função.

Existem outras razões para usar a alocação de heap em vez de alocação de pilha que não conheço?