ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Header file에서 #ifndef
    카테고리 없음 2014. 1. 23. 00:47

    Compiler 따라 Error 나는 경우도 있고 그렇지 않은 경우도 있지만 중복 헤더를 방지하기 위해 습관처럼 사용하자.

    // 헤더 파일의 제일 부분
    #ifndef HDR_H     //
    헤더 파일명을 대문자한 매크로가 정의되어 있지 않으면
    #define HDR_H     //
    헤더 파일명 매크로를 정의한다

    ......                //
    헤더 파일 내용이 여기 들어갑니다

    #endif            // ifndef HDR_H
    매치됩니다

    위와 같이 헤더 파일은 처음 헤더 파일이 포함될 때, 컴파일러의 프리프로세서가 HDR_H 매크로가 정의되어 있지 않으므로 HDR_H 매크로를 정의하게 됩니다.
    다음에 다시 같은 헤더 파일이 포함될 때는 HDR_H이 정의되어 있기 때문에 모든 헤더 파일의 내용을 스킵하게 됩니다. 즉, 포함되지 않는 효과가 생기게 됩니다.

Designed by Tistory.