|
위와 같이 하는 이유는,
헤더화일들을 include하다 보면
같은 헤더화일을 두번이상 include해서 오류가 나는 경우가 있습니다.
이런 바보같은 실수를 할 사람이 누가 있겠느냐고 생각하기 쉽지만
다음과 같은 실수를 하는 경우가 생기더군요.
A.h를 B.h, C.h양쪽 모두에서 include한 후,
DC.CPP에서 B.h, C.h를 인클루드하면,
DC.CPP의 입장으로서는 A.h를 두번 include한 셈이되어
같은 함수와 변수들을 두번 선언했다는 오류가 생기게 됩니다.
"우씨.. 도데체 내가 어디서 두번 선언했다고 그래~!!"
하면서 바보같이 두번선언된 부분을 한참 찾아댔었죠. -.-;
헤더화일이 중복되어 Include되더라도
저렇게 헤더화일 내용을 감싸놓으면 전처리기가 먼저 읽은 시점의 것만 소스로 포함시키기 때문에
안전해집니다.
: 얼마전에야 C++을 배우기 시작한 초보입니다.
:
: header file에 보면
:
: #ifndef _이름_h
: #define _미름_h
:
: 내용
:
: #endif _이름_h
:
: 뭐 이렇게 있는데, 어떤 역할을 하는지 궁금합니다.
:
: 그리고 변수 형태와 함수이름 사이에 있는
: _Cdecl _FARFUNC
: 이런 것들은 무엇을 의미하는지 가르쳐 주시면 감사하겠습니다.
:
: 즐거운 하루 되세요.
|