다음을 통해 공유


include_alias

지정 하는 short_filename 의 별칭으로 사용 됩니다 long_filename.

#pragma include_alias( "long_filename", "short_filename" )
#pragma include_alias( <long_filename>, <short_filename> )

설명

일부 파일 시스템 8.3 FAT 파일 시스템 제한 보다 더 긴 헤더 파일 이름이 있습니다.긴 헤더 파일 이름의 처음 8 개 문자가 고유 수 있기 때문에 컴파일러 긴 이름, 8.3에 간단 하 게 자를 수 없습니다.때마다 컴파일러가 발견의 long_filename 이 문자열을 대체 short_filename, 헤더 파일을 검색 하 고 short_filename 대신.이 pragma 해당 하는 전에 나타나야 합니다 #include 지시문입니다.예를 들면 다음과 같습니다.

// First eight characters of these two files not unique.
#pragma include_alias( "AppleSystemHeaderQuickdraw.h", "quickdra.h" )
#pragma include_alias( "AppleSystemHeaderFruit.h", "fruit.h" )

#pragma include_alias( "GraphicsMenu.h", "gramenu.h" )

#include "AppleSystemHeaderQuickdraw.h"
#include "AppleSystemHeaderFruit.h"
#include "GraphicsMenu.h"

검색할 별칭 지정 맞춤법에도 경우 고 큰따옴표나 꺾쇠 괄호의 사용에 정확 하 게 일치 해야 합니다.Include_alias pragma; 파일 이름에 일치 하는 간단한 문자열을 수행 합니다. 다른 파일 이름 유효성 검사가 수행 됩니다.예를 들어, 다음 지시문을 주어 지 면

#pragma include_alias("mymath.h", "math.h")
#include "./mymath.h"
#include "sys/mymath.h"

헤더 파일 문자열 정확히 일치 하지 않으므로 별칭 없음으로 (대체) 수행 됩니다./Yu 및 /Yc 컴파일러 옵션에 대 한 인수로 사용 되는 헤더 파일 이름 또한, 나는 hdrstop pragma에서 대체 되지.예를 들어 다음 지시문 소스 파일에 포함 된 경우

#include <AppleSystemHeaderStop.h>

해당 컴파일러 옵션을 해야

/YcAppleSystemHeaderStop.h

사용할 수 있는 include_alias pragma 헤더 파일 이름을 다른 위치로 매핑하는 데.예를 들면 다음과 같습니다.

#pragma include_alias( "api.h", "c:\version1.0\api.h" )
#pragma include_alias( <stdio.h>, <newstdio.h> )
#include "api.h"
#include <stdio.h>

꺾쇠 괄호로 묶인 파일 이름을 가진 큰따옴표로 묶은 파일 이름을 혼합 하지 않습니다.예를 들어, 위의 두 가지를 부여 # pragma include_alias 지시문, 컴파일러에서 다음 되지 않습니다 대체 수행 #include 지시문:

#include <api.h>
#include "stdio.h"

또한 다음 지시문 오류가 생성 됩니다.

#pragma include_alias(<header.h>, "header.h")  // Error

참고 파일 이름 오류 메시지 또는 미리 정의 된 값으로 보고 된 __FILE__ 매크로 대체 수행 된 후 파일의 이름입니다.예를 들어, 다음 지시문 뒤

#pragma include_alias( "VeryLongFileName.H", "myfile.h" )
#include "VeryLongFileName.H"

VERYLONGFILENAME에 오류가 있습니다.H는 다음과 같은 오류 메시지를 생성합니다.

myfile.h(15) : error C2059 : syntax error

또한 전이성 지원 되지 않는 참고입니다.다음 지시문을 지정 된 경우

#pragma include_alias( "one.h", "two.h" )
#pragma include_alias( "two.h", "three.h" )
#include "one.h"

컴파일러는 두 파일을 검색합니다.H 대신 세입니다.H.

참고 항목

참조

Pragma 지시문과 __Pragma 키워드