En overflow oppstår under oppkjøringen tid av et program, ? Når du er ferdig med å skrive kode for det. Det skjer når programmet prøver å tilordne en numerisk verdi til en variabel som overstiger , eller " renner over ", at antallet typen maksimale grensen. Med mindre du skrive kode for å håndtere denne feilen , vil det føre til at programmet krasjer hvis det skjer. Årsaker
Oppdager en overflow feil i koden din før det skjer er vanskelig fordi syntaktisk , de fleste beregninger som resulterer i en overflow feil ikke utløser noen varsler i Visual Basic. Oftere enn ikke, vil du bli klar over overløp feil under testing av programmet (eller verre , fra brukerne etter at du distribuere det), og vil da måtte gå tilbake til koden for å rette det opp. De oppstår vanligvis når programmet legger til eller multipliserer tallene sammen som overstiger den maksimale tillatte antallet for en datatype .
Datatyper
Visual Basic. NET har mer enn 10 numeriske datatyper, som hver har ulike grenser for hvor stort et nummer de kan holde . For eksempel kan en byte variabel inneholde verdier fra null til 255. . Hvis du prøver å tilordne en verdi av 256 til variabelen , selv ved å multiplisere 16 ganger 16 i koden din , vil Visual Basic gjenkjenne overløp og ikke la deg bygge programmet. Men hvis det i løpet av programmets gjennomføring, multipliserer det disse tallene og lagrer dem i en byte variabel , vil VB krasje på grunn av en overflow feil .
Løser
< p> Med mindre du er sikker på at tallene i programmet ikke kan renne over , bør du programmere en feil behandleren . Bruk VB.NET ' s " On Error " statement å programmere en feil behandleren å fange overflow feil uten å tvinge programmet til å krasje. Hvis du finner overflow feil i koden , fikse dem ved å endre variabelen datatype til en større en og sjekke beregningene i programmet for å sikre at du vet hva de maksimale verdiene av et nummer kan være.
Hensyn
de beste koding praksis tilsier at du bruker data som er mest passende for verdiene programmet vil beregne , noen ganger vil du ikke vet hva disse verdiene kan være. Når usikker på hvor stort et tall kan bli i programmet, overvurdere og bruke den største numerisk datatype tilgjengelig. Selv om større datatyper krever mer lagringsplass , de fleste datamaskiner har mer enn nok plass tilgjengelig og kan håndtere disse variablene uten å gå tom for minne. Dette vil redusere eller eliminere overflow feil i programmet.