CPP 예외처리

Programming/C,CPP,CS 2012. 9. 23. 15:39 Posted by TanSanC
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

#include <iostream>

#include <string>

#include <exception>

using namespace std;

class UserException : public logic_error

{

public:

    int num1;

    int num2;

    UserException(const int num1, const int num2)

        : logic_error("잘못된인수값")

    {

        this->num1 = num1;

        this->num2 = num2;

    }

    int getNum1(){ return num1; }

    int getNum2(){ return num2; }

};

int divide(int n1, int n2)

{

    UserException ue(n1, n2);

    if( n2 == 0 )

        throw ue;

    int result = n1 / n2;

    return result;

}

 

int main()

{

    int n1, n2;

    cout << ": ";

    cin >> n1;

    cout << ": ";

    cin >> n2;

    try

    {

        cout << divide(n1, n2);

    }

    catch(UserException n)

    {

        cout << "0으로나눌수없습니다." << endl;

        cout << "n1 = " << n.getNum1() << endl;

        cout << "n2 = " << n.getNum2() << endl;

    }  

    return 0;

}

 

 

 

'Programming > C,CPP,CS' 카테고리의 다른 글

C 실습과제  (0) 2012.11.17
프로그래밍 경진대회 관련 사이트  (0) 2012.10.14
C언어 정렬 알고리즘 예제  (0) 2012.08.26
C 달력 소스코드  (2) 2012.07.23
CPP 달력 소스코드  (0) 2012.07.21