/Yu
(미리 컴파일된 헤더 파일 사용)
컴파일러가 현재 컴파일에서 미리 컴파일된 기존 헤더(.pch
) 파일을 사용하도록 지시합니다.
구문
/Yu
[filename]
인수
filename
전처리기 지시문을 사용하여 원본 파일에 포함된 헤더 파일의 #include
이름입니다.
설명
포함 파일의 이름은 미리 컴파일된 헤더를 만드는 옵션과 미리 컴파일된 헤더의 사용을 나타내는 이후 /Yu
옵션 모두 /Yc
에 대해 동일해야 합니다.
의 경우 /Yc
파일 이름은 미리 컴파일이 중지되는 지점을 지정합니다. 컴파일러는 파일 이름을 사용하지만 모든 코드를 미리 컴파일하고 포함 파일의 기본 이름과 확장.pch
명을 사용하여 미리 컴파일된 헤더의 이름을 지정합니다.
를 .pch
사용하여 /Yc
파일을 만들었어야 합니다.
컴파일러는 .h 파일 이전에 발생하는 모든 코드를 미리 컴파일된 것으로 처리합니다. 파일과 .h
연결된 지시문을 건너뛰 #include
고, 파일에 포함된 .pch
코드를 사용한 다음, 파일 이름 뒤의 모든 코드를 컴파일합니다.
명령줄에서 파일 이름과 파일 이름 사이에 /Yu
공백이 허용되지 않습니다.
파일 이름 없이 옵션을 지정 /Yu
하는 경우 소스 프로그램에 미리 컴파일된 헤더 파일 .pch
의 파일 이름을 지정하는 pragma가 포함되어 #pragma hdrstop
야 합니다. 이 경우 컴파일러는 이름이 미리 컴파일된 헤더(.pch
파일)를 /Fp (Name .pch file)
사용합니다. 컴파일러는 해당 pragma의 위치로 건너뛰고 미리 컴파일된 지정된 헤더 파일에서 컴파일된 상태를 복원합니다. 그런 다음 pragma를 따르는 코드만 컴파일합니다. 파일 이름을 지정하지 않으면 #pragma hdrstop
컴파일러는 확장명을 가진 원본 파일의 기본 이름에서 파생된 이름의 파일을 .pch
찾습니다. 이 옵션을 사용하여 /Fp
다른 .pch
파일을 지정할 수도 있습니다.
파일 이름 없이 옵션을 지정 /Yu
하고 pragma를 hdrstop
지정하지 못하면 오류 메시지가 생성되고 컴파일에 실패합니다.
파일 이름 및/Yu
파일 이름 옵션이 동일한 명령줄에서 발생하고 둘 다 동일한 파일 이름을 참조하는 경우 파일 이름이 /Yc
우선적으로 적용되어 명명된 파일까지 모든 코드를 미리 컴파일합니다./Yc
이 기능은 메이크파일 작성을 간소화합니다.
파일에는 컴퓨터에 대한 정보 및 프로그램에 대한 메모리 주소 정보가 포함되어 있으므로 .pch
파일이 만들어진 컴퓨터에서만 사용해야 .pch
합니다.
미리 컴파일된 헤더에 대한 자세한 내용은 다음을 참조하세요.
Visual Studio 개발 환경에서 이 컴파일러 옵션을 설정하려면
프로젝트의 .cpp 파일에 미리 컴파일된 헤더 파일 만들기를 지정
/Yc
합니다.프로젝트의 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 C++ 컴파일러 및 빌드 속성 설정을 참조하세요.
구성 속성>C/C++>미리 컴파일된 헤더 속성 페이지를 선택합니다.
미리 컴파일된 헤더 속성, Create/Use PCH Through File 속성 또는 미리 컴파일된 헤더 만들기/사용 속성을 수정합니다.
프로그래밍 방식으로 이 컴파일러 옵션을 설정하려면
- PrecompiledHeaderThrough 및 UsePrecompiledHeader를 확인합니다.
예시
다음 코드인 경우:
#include <afxwin.h> // Include header for class library
#include "resource.h" // Include resource definitions
#include "myapp.h" // Include information specific to this app
...
는 명령줄 CL /YuMYAPP.H PROG.CPP
을 사용하여 컴파일됩니다. 컴파일러는 세 개의 include 문을 처리하지 않습니다. 대신 미리 컴파일된 코드를 MYAPP.pch
사용하여 세 개의 파일(및 포함할 수 있는 모든 파일)을 모두 전처리하는 데 소요되는 시간을 절약합니다.
다음 예제와 같이 파일 이름 인수 또는 원본 파일의 .pch
기본 이름과 이름이 다른 경우 파일 이름을 지정하는 /Yc
옵션과 함께 /Yu
이 옵션을 사용할 /Fp (Name .pch file)
수 있습니다.
CL /YuMYAPP.H /FpMYPCH.pch PROG.CPP
이 명령은 이름이 미리 컴파일된 헤더 파일을 MYPCH.pch
지정합니다. 컴파일러는 해당 내용을 사용하여 모든 헤더 파일의 미리 컴파일된 상태를 다음까지 복원합니다 MYAPP.h
. 그런 다음 컴파일러는 * 지시문 다음에 #include "MYAPP.h"
발생하는 코드를 컴파일합니다.