Ridurre la tua ricerca. Si tratta di un indizio che ci si sta muovendo nella giusta direzione, se non si riesce a riprodurre l'errore in cui una parte del codice viene impedito di correre . Se si utilizza Visual C + + , il debugger può aiutare si passa tramite il codice per trovare dove la corruzione si verifica .
2
pettine attraverso il codice sorgente . Dopo aver ridotto il problema a una sezione più piccola di codice, è necessario passare attraverso di essa e fare in modo che tutta la memoria di lettura e scrittura l'uso di memoria valida . Dichiarazioni di debug utilizzando funzioni come OutputDebugString per assicurarsi che i valori di memoria sono validi . Controllare per assicurarsi che i limiti della matrice siano rispettate e che la memoria viene inizializzato e non impostati su null o eliminati prima del suo utilizzo .
3
risolvere il problema. Una volta che hai trovato il problema , eliminarla. Se è un estraneo deallocazione di memoria , semplicemente rimuovere questa riga di codice . Assicurarsi che tutti gli array vengono utilizzati solo all'interno dei loro confini e che tutta la memoria accessibile direttamente viene inizializzata prima del suo utilizzo .
4
evitare che il problema si ripetano. A volte, utilizzando un gestore di memoria in modo che tutte le allocazioni di memoria e deallocazioni hanno un'interfaccia comune può aiutare a eliminare gli errori di corruzione della memoria . Si potrebbe desiderare di controllare ogni array di leggere o scrivere , in modo da poter garantire che sia entro limiti .
Programmazione © www.354353.com