/U, /u(기호 정의 해제)
/U
컴파일러 옵션은 지정된 전처리기 기호를 정의하지 않습니다. /u
컴파일러 옵션은 컴파일러가 정의하는 Microsoft 관련 기호를 정의하지 않습니다.
구문
/U
[ ]symbol
/u
인수
symbol
정의되지 않는 전처리기 기호입니다.
설명
두 옵션 모두 /U
/u
지시문을 사용하여 만든 기호를 정의 취소할 #define
수 없습니다.
이 옵션은 옵션을 /U
사용하여 이전에 정의한 기호를 정의 취소할 /D
수 있습니다.
기본적으로 컴파일러는 많은 수의 Microsoft 관련 기호를 정의할 수 있습니다. 다음은 몇 가지 일반적인 항목입니다.
기호 | 함수 |
---|---|
_CHAR_UNSIGNED |
기본 문자 형식은 서명되지 않았습니다. 옵션을 지정할 때 /J 정의됩니다. |
_CPPRTTI |
옵션을 사용하여 컴파일된 코드에 /GR 대해 정의됩니다. |
_CPPUNWIND |
옵션을 사용하여 컴파일된 코드에 /EHsc 대해 정의됩니다. |
_DLL |
옵션을 지정할 때 /MD 정의됩니다. |
_M_IX86 |
기본적으로 x86 대상의 경우 600으로 정의됩니다. |
_MSC_VER |
각 컴파일러 버전에 대한 고유 정수 값으로 정의됩니다. 자세한 내용은 미리 정의된 매크로를 참조 하세요. |
_WIN32 |
WIN32 애플리케이션에 대해 정의됩니다. 항상 정의되어 있습니다. |
_MT |
또는 /MT 옵션을 지정할 때 /MD 정의됩니다. |
Microsoft 관련 미리 정의된 매크로의 전체 목록은 미리 정의된 매크로를 참조 하세요.
Visual Studio 개발 환경에서 이 컴파일러 옵션을 설정하려면
프로젝트의 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 C++ 컴파일러 및 빌드 속성 설정을 참조하세요.
구성 속성>C/C++>고급 속성 페이지를 선택합니다.
정의되지 않은 전처리기 정의를 수정하거나 모든 전처리기 정의 속성을 정의 취소합니다.
프로그래밍 방식으로 이 컴파일러 옵션을 설정하려면
참고 항목
MSVC 컴파일러 옵션
MSVC 컴파일러 명령줄 구문
/J
(기본 문자 형식은 서명되지 않음)
/GR
(런타임 형식 정보 사용)
/EH
(예외 처리 모델)
/MD
, /MT
/LD
(런타임 라이브러리 사용)