Originariamente inviato da infinitejustice
....
Se la allochi senza puntatori lo spazio allocato viene liberato quando la variabile esce dal suo scope.


tutto quello che si alloca dinamicamente non viene MAI distrutto in modo implicito !!
quindi che tu faccia

int* puntatore = new int(5);

oppure

new int(5);

è la stessa cosa.
nel secondo caso, NON c'è modo di deallocare quel 5(sia dentro che fuori dalla scope di quella istruzione).
la new è come se fosse una funzione che alloca memoria e ti ritorna un puntatore. quindi nel secondo caso lo alloca e perdi il puntatore...