본문 바로가기

Note..

조건부 컴파일

첨엔 잘 느끼지 못했는데 헤더파일의 수가 늘어나면서 조건부 컴파일은 그냥 습관처럼 쓴다.
아직까지 조건부 컴파일의 사용성을 피부로느끼진 못하겠지만..  그래도 이론은 이렇다.


#ifndef 는 if not define을 뜻하고, 정의되어 있지 않으면 컴파일 하며 #endif 까지 컴파일 한다.

#define은 '무언가'를 정의하겠다는 뜻이다.

위 둘이 같이 쓰이면,
#ifndef '무엇'
#define '무엇'

....
#endif

하나의 프로젝트 안해서 '무엇'이 정의되어 있지 않다면, 그 '무엇'을 정의하기 위해서 #endif까지 컴파일 할 것이며,
그 속에서 '무엇'을 정의(define)하겠다는 것이다.

이 세가지를 쓰는 이유는, 하나의 프로젝트 안에서 파일을 여러개 쓸때, 중복해서 정의되지 말아야 할 것들이 있는데
컴파일시 중복정의되며 에러가 나지 않도록 미리 방지하는 것이다.



란다 ㅋ
예전에 공부하면서 써논건데 ㅎㅎ

'Note..' 카테고리의 다른 글

내 코드 출력해주기  (0) 2011.08.01
c# 맵에디터  (0) 2011.05.18
12기 대상 C++강의 숙제(1)  (0) 2011.03.28
Thread 기본구조  (0) 2011.03.10
POST와 GET  (0) 2011.01.27