Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Problema

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    423

    Problema

    Allora, ho una classe che, quando viene fatta la somma, restituisce il reference ad una nuova zona di memoria allocata con new (non si può fare in altro modo, perchè il tutto si basa su puntatori a classi base astratte, che non si possono passare per valore). Comunque, venendo al sodo, quando io effettuo un'assegnazione o inserisco il valore ottenuto in un'altra somma, non ci sono problemi, perchè posso "capire" che è un valore temporaneo ed eliminarlo. Il problema nasce quando ho una cosa di questo tipo.

    (OggettoA + OggettoB).MetodoDellaClasse();

    In questo modo in effetti l'oggetto temporaneo non viene assegnato, ma viene creato ed il suo metodo richiamato. A questo punto come posso fare in modo che quando faccio una cosa simile il sistema "capisca" che l'oggetto di cui si parla è temporaneo e liberi la memoria ad esso assegnata ?

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2003
    Messaggi
    423
    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.

  3. #3
    Utente di HTML.it L'avatar di MMarzia
    Registrato dal
    Mar 2001
    Messaggi
    1,781
    linguaggio (ed eventualmente versione) vanno sepmre specificati, anche nel titolo.. che tra l'altro in questo caso è pure troppo generico


    ti consiglio una lettura del regolamento
    io sono festosamente cicciottello :: e. cartman

    t'amo senza sapere come, nè quando nè da dove,
    t'amo direttamente senza problemi nè orgoglio:
    così ti amo perchè non so amare altrimenti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.