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

C++빌더 팁&트릭
C++Builder Programming Tip&Tricks
[614] C++ Builder 컴파일러 버전 확인 매크로
김상구.패패루 [peperu] 8500 읽음    2006-05-25 14:59
기존 C++Builder 6 프로젝트를 BDS2006으로 포팅하는 과정에서 가끔 상호 호환되지 않는 부분들을 발견하실겁니다. 제 경우 STL에서 문제가 발생했는데 BDS2006과 BCB6기반 프로젝트들이 공용으로 사용하는 코드들은 무조건 BDS2006용으로 수정해 버릴 수가 없죠.

이럴때 요긴한 것이 __BORLANDC__ 매크로입니다.

__BORLANDC__매크로는 동일한 코드를 VC에서도 컴파일해야 할 때 BC++와 VC++를 구분하기 위한 용도로도 사용되지만 __BORLANDC__ 의 값을 채크해 봄으로써 빌더 컴파일러 버전을 확인할 수 있습니다.

우선 이 링크를 보시면..
http://support.borland.com/entry.jspa?externalID=3073&categoryID=173

0x0520 ---------- C++Builder 1
0x0530 ---------- C++Builder 3
0x0540 ---------- C++Builder 4
0x0550 ---------- C++Builder 5
0x0560 ---------- C++Builder 6

BDS2006을 추가해 보면...
0x0582 ---------- C++Builder 2006

친절한 상구씨의 예제를 보시면...

#if __BORLANDC__ > 0x0560
// BDS4 이상
#else
// BCB6 이하
#endif

이런식으로 쓰시면 되겠습니다.

+ -

관련 글 리스트
614 C++ Builder 컴파일러 버전 확인 매크로 김상구.패패루 8500 2006/05/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.