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, viene visualizzato un altro menu-un menu a discesa. Ciò consente al programmatore di impostare più oggetti in una sezione senza affollarsi la sezione.

L'errore di punta penzolanteIfest 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 tanto piccoli da far muovere il programma un po 'più lento, ma alla fine possono rendere il programma-e persino il computer-non funzionante.

La maggior parte dei programmi con puntatori penzolanti funzionerà inizialmente e potrebbe continuare a lavorare per mesi o addirittura anni prima che gli errori diventino ovvi. EVI programmi EN 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. La società di software Watchfire® 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.

ALTRE LINGUE

Questo articolo è stato utile? Grazie per il feedback Grazie per il feedback

Come possiamo aiutare? Come possiamo aiutare?