*   >> läser Utbildning artiklar >> science >> programming

Ange Undantag funktioner i C ++

undantagshantering i C ++ - Del 4 Introduktion Detta är en del 4 av min serie, Undantag i C ++. Du kan ha ett försök bifångst konstruktionen i en funktion. Du kan sedan gå vidare för att avgöra vilken typ av operander som try-blocket i funktionen kan kasta som undantag. I denna del av serien, visar jag dig hur man exakt vilken typ av undantag som en funktion kan kasta. Obs: Om du inte kan se koden, eller om du tror att något saknas (bruten länk, bild frånvarande), bara att kontakta mig på [email protected]. Det vill säga, kontakta mig för minsta problem du har om vad du läser.

Prova-Catch Konstruera i en funktion Hela tiden vi har haft prova-fångst konstruktioner i huvudfunktionen. Du kan fortfarande ha det i någon annan funktion. Följande kod illustrerar detta: #include using namespace std; void AFN (int aa, dubbel bb) {try {if ((AA10)) kasta aa; if ((bb70)) kasta bb; //gör något med AA och BB cout cout} catch (int EInt) {cout} catch (dubbel eDbl) {cout}} int main () {AFN (-5, 66,6); återvända 0; } Funktionen har två argument: den första är en int och den andra är en dubbel (float). Int ska ligga mellan 0 och 10 och den dubbla bör ligga mellan 50 och 70.

try-blocket kontrollerar detta och kastar motsvarande parameter identifierare därefter. Det finns en catch-block för int och det finns en catch-block för dubbel. Tyngdpunkten här är att try-blocket och de två catch -block är i funktion. Blanda inte ihop mellan situationen här och vad vi såg i del 1, där ett försök kvarteret en funktion som hade kasta uttalande. Här, try-blocket och dess kasta statement (s) och catch-blocket (s) är i en funktion. Ange Undantag från ovanstående funktion Operanderna för kasta uttalanden i ovanstående funktion är av typen int och dubbel.

Du kan exakt att varje operand för ett kast uttalande try bock av funktionen måste vara antingen int eller dubbel. Följande kod illustrerar detta: #include using namespace std; void AFN (int aa, dubbel bb) kast (int, double) {try {if ((AA10)) kasta aa; if ((bb70)) kasta bb; //gör något med AA och BB cout cout} catch (int EInt) {cout} catch (dubbel eDbl) {cout}} int main () {AFN (-5, 66,6); återvända 0; } Observera uttrycket "kasta (int, double)" i slutet av deklarationen (överst) av funktionen.

Syntaxen för att specificera undantag från en funktion är returntype fnName (parametrar) kasta (typer); Specifikationen sker vid förklaring av funktionen. Du fäster bara "kasta (typ)" för att deklarationen av funktionen. Du kan ha en eller fl

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 läser Utbildning artiklar,https://utbildning.nmjjxx.com All rights reserved.