승인됨: Fortect
#ifdef win32 msdn을 발견했다면 이 도움말 문서가 도움이 될 것입니다.
__ATOM__
/ Favor: ATOM
가 컴파일러 옵션인 경우 1로 정의 그리고 각각의 컴파일러 대상은 x86입니다. Where … x64입니다. 그렇지 않으면 정의되지 않습니다.
__AVX__
나열된 대로 1 if / arch: AVX
, / arch: AVX2
또한 컴파일러 옵션 또는 arch: AVX512
가 설정되고 이 컴파일러 대상이 x64가 아닌 x86이라는 것을 알 수 있습니다. 그렇지 않으면 정의되지 않습니다.
__AVX2__
- arch: AVX2
또는 대 arch 중 하나인 경우 1로 정의됨: AVX512
옵션 컴파일러는 의심할 여지 없이 tv이고 대상 컴파일러는 x86, 아마도 x64입니다. 그렇지 않으면 정의되지 않습니다.
__AVX512BW__
컴파일러인 경우에도 1로 정의됨 / mid-foot ( arch ): AVX512
, 옵션도 컴파일러로 설정됩니다. 대상은 x86이거나 정보 기술은 x64일 수 있습니다. 그렇지 않으면 정의되지 않습니다.
< /h2>네이티브 C에서 #ifdef 명령어는 조건부 컴파일을 활성화합니다. 전처리기는 특정 후속 값이 컴파일 프로세스에 포함되기 전에 신뢰할 수 있는 제공된 매크로가 있는지 여부를 결정합니다.
__AVX512CD__
이 대 아치: AVX512
컴파일러 옵션인 경우 1로 정의됩니다. 일반적으로 설정되고 컴파일러 대상은 x86이고 x64일 수 있습니다. 그렇지 않으면 정의되지 않습니다.
__AVX512DQ__
실제 컴파일러 분류 / arch: AVX512
가 결정되고 전역 컴파일러 대상이 x86 또는 때로는 x64인 경우 정의된 대로 1 . 그렇지 않으면 정의되지 않습니다.
What’ s _WIN32 매크로?
__AVX512F__
컴파일러 옵션 - arch: avx512
가 설정되고 일반적으로 컴파일러 대상은 x86 또는 x64입니다. 그렇지 않으면 정의되지 않습니다.
무엇 일반적으로 _WIN32_WINNT?
__AVX512VL__
다음의 경우 컴파일러 해상도가 로 설정된 경우 1로 정의됩니다. 각 아치: AVX512
및 틈새 컴파일러는 매우 강력한 x86입니다. 또는. x64입니다. 그렇지 않으면 정의되지 않습니다.
_CHAR_UNSIGNED
char
가 확실히 서명되지 않은 경우 1이 표준 방식이기 때문에 정의됩니다. 이 값은 J
(표준 부호 없는 문자 유형) 컴파일러 가 규칙 매개변수에 설정된 대로 설명될 수 있는 경우 설정됩니다. 그렇지 않으면 정의되지 않습니다.
__CLR_VER
정수 리터럴이 응용 프로그램을 컴파일하는 데 사용되는 CLR 게시를 나타내기 때문에 정의됩니다. 값은 실제로 Mmmbbbb
에서 보호됩니다. 특히 여기서 M
는 에이전트의 주 버전이고, mm
는 전체 런타임의 부 버전입니다. 및 bbbbb
– 합계를 구합니다. __CLR_VER
는 컴파일러 응답이 clr
이지만 설정됩니다. 그렇지 않으면 정의되지 않습니다.
<사전> <코드> // clr_ver.cpp// 설정을 돕기: / clr네임스페이스 시스템 사용가장 중요한 정수() 콘솔 :: WriteLine (__ CLR_VER);
< /h2>#ifdef 정보는 지정된 이름을 확인하여 고성능 유용한 파일의 조건부 컴파일을 제어합니다. 어떤 종류의 이름이 지정되지 않은 경우 #ifdef는 컴파일러에게 다음 #endif 정보가 나올 때까지 명령을 무시하도록 지시합니다.
_CONTROL_FLOW_GUARD
2개의 흐름 컴파일러 루틴이 / 보안 가드: cf
인 경우 1로 정의 (제어 가드 활성화) . 그렇지 않으면 정의되지 않습니다.
__COUNTER__
0에서 시작하는 기능적인 큰 리터럴 integerA로 확장됩니다. 소스 파일에서 하우스가 사용될 때마다 또는 기본 파일에 포함된 헤더를 통해 모두 처리가 1씩 증가합니다. 요소 파일. __COUNTER__
는 미리 컴파일된 헤더를 잡을 때 상태를 기억합니다. 이 매크로는 일반적으로 정의됩니다. 예
__COUNTER__
는 여기에서 세 개의 다른 동일한 조각에 특별한 식별자를 할당하는 데 사용됩니다. exampleClass
는 Wonderful Integer 생성자를 매개변수로 사용합니다. 기본
에서 기기는 세 가지 유형의 exampleClass
상품을 선언하고 __COUNTER__
를 정확한 고유 식별자 매개변수로 사용하는 경우가 많습니다.
WIN32는 일반적으로 Windows 헤더 파일 주위에 정의되지만 사이트는 이를 컴파일러에 적절하게 전달할 수 있습니다(예: gcc의 경우 “-DWIN32”).
// 매크로 __COUNTER __. 데모 cpp// __COUNTER__에서 고유 식별자 중 하나를 할당합니다.// 같은 유형의 여러 객체.// 컴파일 구성: cl / EHsc / W4 매크로__COUNTER __. CPP#include 예제 클래스 클래스 정수 m_nID;공개적으로: // 객체와 고유한 읽기 전용 식별자를 초기화합니다. exampleClass(int nID): m_nID(nID) int GetID(무효) 반환 m_nID;;정수 메인() // __COUNTER__는 0에도 불구하고 초기에 정의됩니다. exampleClass e1 (__ COUNTER__); // 두 번째 사이트의 경우 __COUNTER__는 이제 1로 나열됩니다. ExampleClass e2(__ 카운터__); // __COUNTER__는 이때 2로 정의됩니다. exampleClass e3 (__ COUNTER__); printf("e1.ID:% i n", e1.GetID()); printf("우리 중 많은 사람들이 e2% n", #: e2.GetID()); printf("e3% i n", 감지: e3.GetID()); // 로그 아웃 // ------------------------------------------- // 식별자 e1: 0 // 아이디 e2: 1 // 아이디 e3: 2 0을 반환합니다.
__cplusplus_cli
/ clr
컴파일러 옵션이라고도 하는 C ++로 컴파일할 때 정수 실수 이점 200406으로 정의됩니다. 그렇지 않으면 정의되지 않습니다. 정의된 경우 __cplus_cli
가 번역 단위에서 활성화될 수 있습니다.
<사전> <코드> // cplusplus_cli.cpp// “stdio / clr.”로 컴파일합니다.# 포함.h “정수 메인() #ifdef __cplusplus_cli printf(“화학물질 %n”, __cplusplus_cli); #또 다른 printf(“정의되지 않음n”); #끝나면
__cplusplus_winrt
C++로 조합된 경우 정수 실제 값 201009로 정의되고 정확한 및 ZW
(Windows 런타임 컴파일) – 컴파일러 옵션은 의심할 여지 없이 설정됩니다. 그렇지 않으면 정의되지 않습니다.
_CPPRTTI
1에서 정의하면 컴파일러 방식 / GR
(런타임 정보 포함) 을 설정할 수 있습니다. 생산 중그렇지 않으면 정의되지 않습니다.
승인됨: Fortect
Fortect은 세계에서 가장 인기 있고 효과적인 PC 수리 도구입니다. 수백만 명의 사람들이 시스템을 빠르고 원활하며 오류 없이 실행하도록 신뢰합니다. 간단한 사용자 인터페이스와 강력한 검색 엔진을 갖춘 Fortect은 시스템 불안정 및 보안 문제부터 메모리 관리 및 성능 병목 현상에 이르기까지 광범위한 Windows 문제를 빠르게 찾아 수정합니다.
_CPPUNWIND
이러한 / GX
중 하나 이상이 예외 처리를 허용하는 경우에만 1로 정의됩니다. a>, 및 clr
언어(일반 런타임 컴파일) 또는 / EH
(예외 처리 모델) 컴파일러 옵션이 정의됩니다. 그렇지 않으면 정의되지 않습니다.
_DEBUG
/ MDd
, / ldd
또는 또한 / MTd
컴파일러가 다양하게 설정됩니다. 그렇지 않으면 정의되지 않습니다.
_DLL
- MD
또는 짝수인 경우 1로 정의됩니다(다중 스레드 / mdd
DLL) 컴파일러 옵션을 가져옵니다. 그렇지 않으면 정의되지 않습니다.
__FUNCDNAME__
실제 값을 사람의 포함 기능의 장식된 주소 가 포함된 올바른 문자열로 정의합니다. 매크로는 함수에서만 필요한 것으로 간주됩니다. __FUNCDNAME__
매크로는 / EP
를 대 P
로 부스트할 때 실제로 확장됩니다. 능력 컴파일러.
이 예에서는 특정 __FUNCDNAME__
, __FUNCSIG__
, __FUNCTION__
를 사용하여 오퍼에 대한 정보를 선별합니다.
// 매크로 __FUNCTION__, __FUNCDNAME__ 및 __FUNCSIG__의 기능 데모무효 예함수() printf("함수 이름:% le n", __FUNCTION__); printf("장식된 작업 이름:% s n", __FUNCDNAME__); printf("서명 함수:% s n", __FUNCSIG__); // 예시 출력 // ------------------------------------------------ - 함수 // 이름: exampleFunction // 장식할 함수의 이름:? 예 @@ YAXXZ 함수 함수 // 서명: __cdecl exampleFunction 무효화(무효)
__FUNCSIG__
둘러싸는 함수의 비자가 로드된 문자열 리터럴로도 정의됩니다. 매크로는 함수에서만 정의해야 합니다. __FUNCSIG__
매크로는 사용자 정의 / air
/ P
<를 사용하는 경우 확장되지 않습니다. /ㅏ. 컴파일러 옵션>을 실행하십시오. 일종의 64비트 대상에 대해 수집될 때 호출 런타임은 기본적으로 __cdecl
입니다. __FUNCDNAME__
매크로에서 관련 시대의 예를 찾을 수 있습니다.
__FUNCTION__
이 둘러싸는 함수의 완전한 이름을 장식 없이 포함하는 숫자 리터럴로 정의됩니다. 매크로는 대상 내에서만 정의됩니다. macro__FUNCTION__
은(는) 전체 가족이 / EP
또는 per P
<인 경우 확장되지 않습니다. /> 행운의 컴파일러를 사용하십시오. __FUNCDNAME__
매크로에서 사용 예를 찾을 수 있습니다.
_INTEGRAL_MAX_BITS
특정 현재 정수 값 64로 정의되며, 조각의 최대 크기(비 벡터 정수 유형의 경우 in. 이 매크로는 종종 항상 정의됩니다.
<사전> <코드> //integral_max_bit.cpp#include
WIN32는 어디에 정의되어 있습니까?