반응형
프로젝트 ->> config.h,con.cpp,main.cpp 가 있을 때->con.cpp 와 main.cpp 파일이 config.h 파일을 각각 참조하는경우 동일한 내용을 두번 참조하면 오류가 발생할수있다.
이를 방지하기 위하여 컴파일에서 해당코드를 한번만 참조하게 하는 전처리기를 사용한다.
- 컴파일 할 때 매번 모든 코드를 컴파일 하는 것이 아니라 조건에 만족하는 코드만을 컴파일에 포함하는것이다.
à예약어
#ifdef AAA
#else
#endif
위의 내용은 AAA가 정의 되어 있다면 #ifdef 와 #else 사이의 내용을 컴파일하고,AAA가 정의 되어있지않다면 #else와 #endif 사이의 내용을 컴파일 하는것이다.
à#ifndef AAA
#else
#endif
위의 내용은 AAA가 정의 되어있지않다면 #ifndef와 #else 사이의 내용을 컴파일하고,AAA가 정의 되어있다면 #else 와 #endif 사이의 내용을 컴파일 하는것이다.
- #define 을 사용하여 기호 상수를 정의 한다.#define Test 123 à TEST 를 123 으로 대체하는 작업을 수행함,즉 Test 는 약속된 문구가 되는것이다.
Ex:
#ifndef _CONFIG_H_
#define _CONFIG_H_
코드…
#else
#endif
만약 _CONFIG_H_ 이것이 정의가 안되있다면, _CONFIG_H_ 을 정의하라 는것이다.
à#ifdef 를 사용하려면
#ifdef _CONFIG_H_
#else
#define _CONFIG_H_
코드
#endif
- #ifndef _헤더파일 이름을 대문자로 표시_
- #define _헤더파일 이름을 대문자로 표시_
- 선언내용
- #else
- #endif
반응형