Ho trovato una semi-soluzione più o meno efficace anche se noiosa. Praticamente, siccome io opero con una classe contenitore, ho creato nella classe originale 2 versioni del metodo: una cancella l'oggetto che lo chiama, l'altra no. A questo punto, dato che le operazioni tra classi-contenitore come quelle prima descritte restituiscono un oggetto del tipo base, quando si usa il metodo applicandolo ad un oggetto temporaneo verrà richiamato quello che distrugge la classe. In caso di oggetto assegnato ad un contenitore, verrà chiamata l'altra versione. E' scomodo perchè devo farlo per ogni metodo, ma funziona e questo è l'importante. Se avete soluzioni migliori, vi prego di comunicarmele.

Rispondi quotando