C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[37060] 혹시 Exception 클래스를 상속받아 만들어 보신적 있으신가요?
친구들 [] 1241 읽음    2004-08-31 21:11
EDatabaseError 클래스를 상속받아 새로운 Exception을 만들어주고 싶습니다...
그래서 다음과 같이 하려고 하는데 가능한일인가요????

void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
    try{

      어쩌구저쩌구;

    } catch( EDatabaseError &E) 
    {
       throw Exception(AnsiString(E.ClassName())+E.Message); 
    }
}

DB Exception을 잡아서
새로운 Exception을 만든다음에
그 결과를 맨 처음 Exception난 부분으로 던져주고 있습니다.
즉,chaining하고 있습니다...

첫째는 여기서 메서드 이름을 던질수 있는가 하는가 하구요( 현재는 class 이름만 던지고 있습니다.)
즉, ComboBox1Change을 보낼수 있는가하는 것입니다..

두번째는..EDatabaseError 클래스를 상속받아서 새로운 userDefinedException을 만들고 싶습니다...

즉,,
void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
    try{

      어쩌구저쩌구;

    } catch( UserDefinedException &E)    <==== 이렇게 바꾸고 싶어요
    {
       throw Exception(AnsiString(E.ClassName())+E.Message); 
    }
}
이렇게 Exception을 상속받아 새로운 Exception을 만들고싶어서 다음과같이 클래스를 만들었습니다.

=====================header==========================
class TUserDefinedException : public EDatabaseError
{
private:   
public:       
    __fastcall TUserDefinedException ();
};

=====================cpp==========================
//constructor....
__fastcall TUserDefinedException ::TUserDefinedException ()
           : EDatabaseError()
{

}
===================================================
이렇게 했는데....
음.......에러가 나네요...ㅡㅡ;;

혹시 Exception 클래스 상속받아서 사용해보신분이나....
새로운 Exception클래스를 만들어보신분 있으시면 조그마한 도움이라도 주시면 감사하겠습니다.

+ -

관련 글 리스트
37060 혹시 Exception 클래스를 상속받아 만들어 보신적 있으신가요? 친구들 1241 2004/08/31
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.