Originariamente inviato da Ippo343
Temo di non vedere il problema... La reference che ritorno è ad un oggetto valido.
Quello che mi stai dicendo è che facendo così non sono più in grado di deallocare quella memoria, dico bene?
Da una prova che ho fatto il tutto parrebbe funzionare (resterebbe da capire cosa dice lo standard in proposito: si potrebbe essere al limite dell'undefined behaviour e personamente preferisco evitare).

Per liberare la memoria parebasti:
codice:
string& z = mem_hog();

delete &z;
Direi scomodo.