En overflow fejl opstår under run-time af et program, ? Efter du er færdig med at skrive kode til det . Det sker, når programmet forsøger at tildele en numerisk værdi til en variabel , der overstiger eller " overløb ", at antallet typen maksimale grænse. Medmindre du skriver kode til at håndtere denne fejl , vil det medføre dit program til at gå ned , hvis den opstår. Årsager
Afsløring en overflow fejl i din kode , før det sker, er svært, fordi syntaktisk , de fleste beregninger , der resulterer i en overflow fejl ikke udløser nogen advarsler i Visual Basic. Oftere end ikke , vil du blive opmærksom på overløb fejl under test af dit program (eller værre , fra brugere, når du distribuerer det) og vil derefter nødt til at vende tilbage til den kode til at rette det. De opstår normalt , når dit program tilføjer eller ganger tal sammen, der overstiger det maksimalt tilladte antal for en datatype.
Datatyper
Visual Basic. NET har mere end 10 numeriske datatyper, som hver har forskellige grænser for, hvor stort et nummer de kan holde . For eksempel kan en byte variabel holde værdier fra nul til 255 . Hvis du forsøger at tildele en værdi på 256 til variablen , selv ved at multiplicere 16 gange 16 i din kode, vil Visual Basic genkende overløb og ikke lade dig bygge programmet. Men hvis der under dit program henrettelse , det ganger disse tal og gemmer dem i en byte variabel , vil VB ned på grund af et overløb fejl.
Løser
< p> Medmindre du er sikker på, at tallene i dit program ikke kan overløb, bør du programmere en fejlbehandleren . Brug VB.NET ' s " On Error " erklæring at programmere en fejlbehandleren at fange overløb fejl uden at tvinge dit program til at gå ned . Hvis du finder overflow fejl i din kode , løse dem ved at ændre variablens datatype til en større og tjekke beregningerne i dit program for at sikre , at du ved, hvad de maksimale værdier for en række kan være.
< br > Overvejelser
bedste kodning praksis dikterer, at du bruger datatypen mest hensigtsmæssige for de værdier dit program vil beregne , nogle gange vil du ikke vide, hvad disse værdier kan være. Ved tvivl om, hvor stor en række kan blive i dit program , overvurderer og bruge den største numerisk datatype til rådighed. Selv større datatyper kræver mere lagerplads, de fleste computere har mere end nok plads til rådighed og kan håndtere disse variabler uden at løbe tør for hukommelse. Dette vil reducere eller eliminere overflow fejl i dit program .