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
[21889] Re:[질문]dynamic_cast< T >(prt)에 관해서 문의 드립니다.
한동희 [pipikoko] 736 읽음    2002-10-05 10:28
컴파일러에게는 T라는 것이 무엇인지 정확히 알아야 컴파일에 성공할 것입니다.
이 문장 ==> dynamic_cast<T>(Owner)->MyValue
만 놓고 보면 T가 무엇인지 컴파일러는 알 수 없을 것 같습니다.
즉 T라는 것은 컴파일 타임에 정해진 것이어야 한다는 것이죠.
(빌더 도움말에는 T must be a pointer or a reference to a defined class type or void*.라고 적혀 있습니다.)
그렇다면 원하시는 런타임에 T를 결정하는 방식은 불가능 하다는 것이 될 것 같습니다.

궁금이 님이 쓰신 글 :
: dynamic_cast<TmyForm1 *>(Owner);
: dynamic_cast<TmyForm2 *>(Owner);
: 를 선택적으로 사용하고 싶습니다.
: if(bool == true)
:     Label1 = dynamic_cast<TmyForm1 *>(Owner)->MyValue;
: else
:     Label1 = dynamic_cast<TmyForm2 *>(Owner)->MyValue;
:
: 이렇게  하지 않고...
: dynamic_cast<T>(prt)에서 저 T를 변경시킬순 없을 까요?
: 즉,
: if(type1)
:     T = TmyForm1*;
: else
:     T = TmyForm2*; 
:
: Label1 = dynamic_cast<T>(Owner)->MyValue;
:
: 이런 식으로 가능한지 불가능한지를 알고 싶습니다.
: 도움을 요청합니다.

+ -

관련 글 리스트
21851 [질문]dynamic_cast< T >(prt)에 관해서 문의 드립니다. 궁금이 679 2002/10/02
30834     Re:[질문]dynamic_cast< T >(prt)에 관해서 문의 드립니다. 김재구 721 2002/10/03
21889     Re:[질문]dynamic_cast< T >(prt)에 관해서 문의 드립니다. 한동희 736 2002/10/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.