728x90
반응형
질문 : #ifndef 및 #define이 C ++ 헤더 파일에서 사용되는 이유는 무엇입니까?
나는 일반적으로 헤더 파일의 시작 부분에서 다음과 같은 코드를 보았습니다.
#ifndef HEADERFILE_H
#define HEADERFILE_H
그리고 파일의 끝에는
#endif
이것의 목적은 무엇입니까?
답변
이를 #include 가드 라고합니다.
헤더가 포함되면 고유 값 (이 경우 HEADERFILE_H
)이 정의되었는지 확인합니다. 그런 다음 정의되지 않은 경우 정의하고 나머지 페이지로 계속합니다.
코드가 다시 포함되면 첫 번째 ifndef
가 실패하여 빈 파일이 생성됩니다.
이는 유형, 열거 형 및 정적 변수와 같은 식별자의 이중 선언을 방지합니다.
출처 : https://stackoverflow.com/questions/1653958/why-are-ifndef-and-define-used-in-c-header-files
728x90
반응형
'프로그래밍 언어 > C++' 카테고리의 다른 글
C ++ 11 rvalue 및 이동 의미 혼란 (return 문) (0) | 2021.08.04 |
---|---|
C / C ++에 표준 부호 함수 (signum, sgn)를 사용하는 방법 (0) | 2021.08.04 |
C 또는 C ++를 사용하여 디렉토리의 파일 목록을 가져오는 방법 (0) | 2021.07.30 |
C ++ 11은 표준화 된 메모리 모델의 도입이 미치는 영향 (0) | 2021.07.28 |
C ++ 11에서 람다식이란? (0) | 2021.07.28 |