Skip to main content

Cos'è un puntatore penzolante?

Un puntatore penzolante è un difetto di programmazione che si verifica nella codifica orientata agli oggetti quando un oggetto puntatore indica un altro oggetto che non esiste più.In questo caso, un puntatore non è un puntatore del mouse ma un oggetto puntatore destinato a inviare l'utente a un altro oggetto.Questo difetto crea bug sottili che possono peggiorare con il tempo e presenta anche un problema di sicurezza che gli hacker qualificati possono attaccare.Un puntatore penzolante si verifica quando un programmatore cancella l'oggetto a cui viene indicato ma non cancella il puntatore stesso.

Nella codifica orientata agli oggetti, in cui la codifica è separata in oggetti, c'è un'istanza chiamata puntatore.L'istanza del puntatore viene posizionata da qualche parte nel programma, in genere in un menu, e porta l'utente a un altro oggetto.Ad esempio, se l'utente evidenzia una sezione di un menu, un altro menu e mdash;un discesa e mdash;appare.Ciò consente al programmatore di impostare più oggetti in una sezione senza affollarsi la sezione.

L'errore del punta penzolante si manifesta quando un programmatore cancella l'oggetto a cui viene indicato.Se il programmatore cancella anche l'istanza del puntatore, non ci saranno problemi.Se il programmatore dimentica e mantiene il puntatore nella codifica, questo crea un puntatore penzolante e presenta problemi di qualità e di sicurezza.

In termini di qualità, un puntatore penzolante sembra sciatto e crea sottili bug.Questo perché il programma non sa come agire, perché gli viene detto di fare qualcosa ma non può perché l'oggetto è sparito.Questo atto crea codice casuale o deteriora il codice in modi piccoli e sottili che sono difficili da rilevare.Questi bug possono essere piccoli da far muovere il programma un po 'più lento, ma alla fine potrebbero rendere il programma mdash;e persino il computer mdash;Non funzionante.

La maggior parte dei programmi con puntatori penzolanti funzionerà inizialmente e può continuare a lavorare per mesi o addirittura anni prima che gli errori diventi ovvi.Anche i programmi che rendono calcoli, il che significa che il puntatore penzolante è nella formula, possono ancora essere in grado di effettuare semplici calcoli.Questo è uno dei motivi per cui trovare puntatori penzolanti può essere così difficile.

Fino al 2007, il puntatore penzolante ha creato solo problemi di sicurezza in teoria.The Watchfire reg;La società di software ha quindi realizzato un programma che ha mostrato come i puntatori penzolanti possano essere sfruttati, rendendo il rischio di sicurezza in realtà.Gli hacker sono in grado di infiltrarsi in un programma tramite questo bug e possono iniettare il proprio codice nel programma imperfetto.