Multi Exception Handling : try catch « Statement « Visual C++ .NET

Home
Visual C++ .NET
1.2D
2.Class
3.Collections
4.Data Type
5.Database ADO.net
6.Delegate
7.Development
8.File Directory
9.Function
10.Generics
11.GUI Form
12.Language Basics
13.Network
14.Reflection
15.Security
16.Statement
17.Structure
18.Thread
19.XML
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Visual C++ .NET » Statement » try catch 
Multi Exception Handling
 


#include "stdafx.h"
using namespace System;

ref class LevelOneException : public ApplicationException{
public:
    LevelOneExceptionString ^err );
};

LevelOneException::LevelOneException(String ^err: ApplicationException(err
{
}

ref class LevelTwoException : public LevelOneException{
public:
    LevelTwoExceptionString ^err );
};

LevelTwoException::LevelTwoException(String ^err: LevelOneException(err)
{
}

void main(){
    for (int i = 0; i < 4; i++){
        try{
            if (i == 1)
                throw gcnew ApplicationException("\tBase Exception Thrown");
            else if (i == 2)
                throw gcnew LevelOneException("\tLevel 1 Exception Thrown");
            else if (i == 3)
                throw gcnew LevelTwoException("\tLevel 2 Exception Thrown");
        }catch (LevelTwoException ^e2){
            Console::WriteLine(e2->Message);
            Console::WriteLine("\tLevel 2 Exception");
        }
        catch (LevelOneException ^e1)
        {
            Console::WriteLine(e1->Message);
            Console::WriteLine("\tLevel 1 Exception");
        }
        catch (ApplicationException ^e)
        {
            Console::WriteLine(e->Message);
            Console::WriteLine("\tBase Exception");
        }
    }


   
  
Related examples in the same category
1.Catch an Exception with a try/catch Block
2.Catch All exceptions
3.Catch Exception
4.Catch IndexOutOfRangeException
5.Catch IO exception
6.Nested exception catching
7.Catch custom exception and then general exception
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.