*   >> Lese Utdanning Artikler >> science >> programming

Grunnleggende om Unntak i C ++

re 10, og så videre; du er en å velge verdiene. Hvert kast tar normalt ett argument. Hvis argumentene er av forskjellige objekttyper, så du trenger en catch-blokken for hver type (se senere). Kast Expression i en funksjon Du kan sette det du trenger for prøve blokk i en funksjon som vist nedenfor: # include bruker namespace std; int teller = 8; int nevner = 0; ugyldig errFn () {if {int svar = teller /nevner (evner = 0!); domstol} else {kaste 0; }} Int main () {try {errFn (); } Catch (int e) {cout} return 0; } Merk at i catch-blokken, denne gangen, jeg har ikke brukt en if-setning.

Dette er fordi, hvis parameteren av fangsten konstruksjon er av samme type som argumentet av kastet uttrykket, så fangsten-konstruksjonen vil få unntak (vil fange det som har blitt kastet). Under denne tilstanden, er det ikke obligatorisk å bruke identifikator av fangsten parameter i catch-blokken. Vel, også oppmerksom på at igangsettelsen av teller og nevner er nå utenfor hovedbygningen (og funksjonsblokken) og opp i koden, slik at de kan bli sett av noen blokk i koden. Vi har lært at innkastet uttrykket kan være i prøve blokk direkte eller i en funksjon kalt av forsøk blokken.

Men fortsatt er catch-blokken festet til prøve blokken, om ikke innkastet uttrykket er i prøve blokk direkte eller i funksjon kalt ved forsøk blokken. Merk: I praktisk programmering, de fleste fangst blokker bare å sende en feilmelding til brukeren av programmet; de egentlig ikke rette opp feilen. La oss ta en pause her og fortsette i neste del av serien.

Chrys å komme frem til noen av delene av denne serien, bare skriv tilsvarende tittel nedenfor og mitt navn, Chrys, i søkeboksen på denne siden og klikk Søk (bruk menyen hvis tilgjengelig): Grunnleggende om Unntak i C ++ Kaster flere operander med C ++ Unntak Hekkende try-catch-blokker Spesifisere Unntak Funksjoner i C ++ klasser og unntak i C ++

Page   <<  [1] [2] [3] 
Copyright © 2008 - 2016 Lese Utdanning Artikler,https://utdanning.nmjjxx.com All rights reserved.