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
[71451] Re:Re:dynamic_cast 오류
funji [] 3235 읽음    2014-06-22 15:27
방코님 정말 감사합니다^^
덕분에 해결이 됬어요^^

방코 님이 쓰신 글 :
: 저도 잘모르는 초봅니다만,
: base class타입의 포인터 Sender를 파생클래스 TMenuItem 타입의 포인터로 캐스트하기위해서는
: dynamic_cast를 아래와 같이 쓰시면 될거 같습니다.
: TMenuItem* Mitem = dynamic_cast<TMenuItem *>(Sender);
:
:
: funji 님이 쓰신 글 :
: : 지금 제가 델파이에서 빌더로 소스를 변환중인데요..
: : 델파이에서 as연산자를 dynamic_cast를 이용하면된다는 글을 보고 이렇게 변환을 해봤는데
: : < expected 라는 에러구문이 나오더라구요...ㅠㅠ
: : MmcPopupMenuItemClick()는 이벤트는 아니구요,,,
: : 제가 따로 만든 함수입니다.
: : dynamic_cast연산자 예시는를 게시판에서 보면 이벤트에서 적용을 하셨던데...
: : 사용자가 만든 함수에서는 dynamic_cast연산자를 못쓰는건가요???
: : 아님 dynamic_cast를 쓸대 헤더 파일이 필요한건가요???
: :
: :
: : 

: : //C++ Builber
: : void __fastcall TfmMain::MmcPopupMenuItemClick(TObject* Sender)
: : {
: :     //델파이 as연산자 대체 방법 'dynamic_cast'
: :     //실패 - NULL 반환
: :     TMenuItem* Mitem = dynamic_cast(Sender);
: :     if (Mitem)
: :     {
: :         DispPos[iCrtType].CrtPg = GetMenuItemNum(Mitem->Name);
: :     }
: : }
: :
: :
: : //델파이
: : procedure THomeForm.MmcPopupMenuItemClick(Sender: TObject);
: : begin
: :   //GD^.MmcPage.sMItemCap   := (Sender as TMenuItem).Caption;
: :   //ShowMimicCrtPage(GetMenuItemNum((Sender as TMenuItem).Name));
: :   DispPos[iCrtType].CrtPg := GetMenuItemNum((Sender as TMenuItem).Name);
: : end;
: :

+ -

관련 글 리스트
71446 dynamic_cast 오류 funji 3186 2014/06/20
71449     Re:dynamic_cast 오류 방코 3421 2014/06/20
71451         Re:Re:dynamic_cast 오류 funji 3235 2014/06/22
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.