Video: Come funziona l'eliminazione in C++?
2024 Autore: Lynn Donovan | [email protected]. Ultima modifica: 2023-12-15 23:49
quando eliminare è usato per deallocare la memoria per a C++ oggetto di classe, il distruttore dell'oggetto è chiamato prima della memoria dell'oggetto è deallocato (se l'oggetto ha un distruttore). Se l'operando di Elimina operatore è un l-value modificabile, il suo valore è indefinito dopo l'oggetto è cancellato.
Inoltre, la domanda è: qual è la differenza tra l'eliminazione e l'eliminazione in C++?
Entrambi sono usati per lo stesso scopo, ma ne hanno ancora alcuni differenze , il differenze sono: Elimina è un operatore mentre free() è una funzione di libreria. Elimina libera la memoria allocata e chiama il distruttore. Ma free() dealloca la memoria ma non chiama il distruttore.
Ci si potrebbe anche chiedere, come funziona il nuovo C++? quando nuovo è usato per allocare memoria per a C++ oggetto di classe, il costruttore dell'oggetto viene chiamato dopo che la memoria è stata allocata. Quando si alloca un array usando il nuovo operatore, la prima dimensione può essere zero - il nuovo L'operatore restituisce un puntatore univoco.
Ci si potrebbe anche chiedere, qual è l'uso dell'operatore new e delete in C++?
C++ supporta l'allocazione dinamica e la deallocazione degli oggetti usando il nuovi ed elimina operatori . Queste operatori allocare memoria per gli oggetti da un pool chiamato thefree store. Il nuovo operatore chiama la funzione speciale operatore nuovo , e il elimina operatore chiama la funzione speciale operatore cancella.
Devo eliminare i puntatori C++?
1 risposta. tu no devo cancellare e, inoltre, non dovresti Elimina esso. Se la terra è un oggetto automatico, verrà liberato automaticamente. Quindi manualmente cancellare un puntatore ad esso, entri in un comportamento indefinito.