ПредишенСледващото

Състав на Visual C ++ определи довършват някои предпроцесорни макроси, в зависимост от езика (C или C ++), целевата обекта и съставят варианти за избрания компилатор.

Visual C ++ поддържа необходимите предварително определени предпроцесорни макроси, определени от / ISO стандарт C99 ANSI и ISO C ++ стандарт 14. Изпълнението също поддържа няколко допълнителни Microsoft системи предпроцесорни макроси. Някои дефинирани макроси само за определени среди или изграждане на настройките на компилатора. Ако не е определено, макроси за запис, определени в реализация, както ако те са обозначени като A / D аргументи опция компилатор. При определяне на макроси предпроцесорни разгръща пред съставянето на тези ценности. Предварително дефинирани макроси не приемат аргументи и не могат да бъдат отменени.

Компилаторът поддържа предварително определен идентификатор определя C99 ISO и ISO C ++ стандарт 11.

__func__ непълна и nedekoriruemoe състояща име функция като функция местен static``const знак масив.

Компилаторът поддържа следните предварително дефинирани макроса, определени от ISO C99 и C ++ ISO 14 стандарти.

__cplusplus определя като стойност на цяло число буквално когато запис трансформация събират като C ++. В противен случай, неизвестна величина.

__DATE__ дата компилация на текущия източник файл. Дата - символни низове, постоянна дължина в гггг формат дд ммм. име Месец Ммм е същата съкратеното име на месеца, през деня, създаване на библиотека функция по време на работа С asctime. Дата на първия знак на дд - това пространство, ако стойността е по-малко от 10. Този макрос винаги се определя.

__FILE__ име на текущия източник файл. __FILE__ е настроен за герой, буквално. За да сте сигурни, че показва пълния път до файла, използвайте / СК (пълен път до файла на изходния код в диагностиката). Този макрос е определена по всяко време.

__LINE__ определя като цяло число линия в текущата изходния файл. Значение __LINE__ макро може да бъде променена с помощта на #line директива. Този макрос е определена по всяко време.

__STDC__ определя като 1 само когато събират като С и / Za е посочено компилатор. В противен случай, неизвестна величина.

__STDC_HOSTED__ определя като 1, ако изпълнението домакин изпълнение. Тя поддържа всички стандартни библиотеката. В противен случай - дефинирана като 0.

__STDCPP_THREADS__ определя като 1 само когато програмата може да бъде повече от една нишка на изпълнение и събират като C ++. В противен случай, неизвестна величина.

__TIME__ запис трансфер трансформация време предварителна обработка. Време е буквално символен низ в чч формат. по същото време като се върна библиотека по време на работа на функцията за C asctime. Този макрос е определена по всяко време.

_CPPRTTI определя като 1, ако / GR (да се включи информация за видовете по време на изпълнение) е посочена опция компилатор. В противен случай, неизвестна величина.

_DEBUG определя като 1, ако / LDD. / ГДР. или / MTD задаване на опция компилатор. В противен случай, неизвестна величина.

_DLL определя като 1, ако / MD или / MDD набор компилатор опция (Многонишковата DLL). В противен случай, неизвестна величина.

__FUNCDNAME__ определя като символни низове, съдържащ украсени името на външния функция. Макрос се определя само в рамките на една функция. __FUNCDNAME__ макро не става с помощта на / EP / или опция P компилатор.

Този пример използва __FUNCDNAME__. __FUNCSIG__. и __FUNCTION__ макроси за показване на информация за функциите.

__FUNCSIG__ низ буквално се определя като съдържащ функция състояща подпис. Макрос се определя само в рамките на една функция. __FUNCSIG__ макро не става с помощта на / EP / или опция P компилатор. При съставянето на 64-битова конвенция краен вика - __cdecl по подразбиране. Пример използване см. __FUNCDNAME__ макро сечение.

__FUNCTION__ определя като низ буквално съдържащ външен името състояща функция. Макрос се определя само в рамките на една функция. __FUNCTION__ макро не става с помощта на / EP / или опция P компилатор. Пример използване см. __FUNCDNAME__ макро сечение.

_INTEGRAL_MAX_BITS дефинирани като цяло число буквално стойност 64, максималният размер (в битове) от типа число не е вектор. Този макрос е определена по всяко време.

__INTELLISENSE__ определя като едно време пас компилатор IntelliSense в развитието на Visual Studio IDE. В противен случай, неизвестна величина. Този макрос може да се използва за защита на IntelliSense код компилатор не разбира, и да го използвате, за да превключвате между монтажа и IntelliSense компилатор. За допълнителна информация. Вижте съвети за отстраняване на изпълнение IntelliSense.

_ISO_VOLATILE определя като 1, ако / летлив: ISO опция набор компилатор. В противен случай, неизвестна величина.

_KERNEL_MODE определя като 1, ако / ядрото (Създаване режим двоичен ядрото) е настроен на компилатора. В противен случай, неизвестна величина.

_M_AMD64 определя като число буквално 64 процесор 100 за съставяне. В противен случай, неизвестна величина.

_M_ARM определя като цяло число буквално стойност 7 за компилации предназначени за ARM процесори. В противен случай, неизвестна величина.

_M_ARM_ARMV7VE определя като 1, ако / арка: ARMv7VE набор параметри компилатор за съставяне предназначени за ARM процесори. В противен случай, неизвестна величина.

_M_ARM_FP определя като стойността на цяло число, което показва, че буквално / опция арка съставител е била определена, ако целта на съставяне ARM процесори. В противен случай, неизвестна величина.

В диапазона 30-39, освен ако не е / арка е бил регистриран опция ARM, задаване на стойност, която показва архитектурата по подразбиране за ARM (VFPv3).

В диапазона от 40-49, когато / арка: бил инсталиран VFPv4.

В / арката (ARM) за повече информация.

_M_ARM64 определя като 1 за компилации, предназначени за 64-битови ARM процесори. В противен случай, неизвестна величина.

_M_CEE определя като 001 Ако някоя / CLR (CLR компилация) е настроен на компилатора. В противен случай, неизвестна величина.

_M_CEE_PURE определя като 001, ако / CLR: е посочено чист вариант компилатор. В противен случай, неизвестна величина.

_M_CEE_SAFE определя като 001, ако / CLR: Не е посочено безопасен вариант компилатор. В противен случай, неизвестна величина.

_M_FP_EXCEPT определя като 1, ако / FP: изключение или / FP: стриктна система опция компилатор. В противен случай, неизвестна величина.

_M_FP_FAST определя като 1, ако / FP: бързо задаване на опция компилатор. В противен случай, неизвестна величина.

_M_FP_PRECISE определя като 1, ако / FP: Точното задаване на опция компилатор. В противен случай, неизвестна величина.

_M_FP_STRICT определя като 1, ако / FP: стриктна система опция компилатор. В противен случай, неизвестна величина.

_M_IX86 определя като цяло число буквално стойност x86 процесори 600 компилации. Този макрос не е определен за x64 или ARM целеви компилация обекти.

_M_IX86_FP определя като целочислена стойност на опцията за буквален уточняване / арка компилатор, който е създаден, или стойност по подразбиране. Този макрос се определя всеки път, когато целевата процесор x86 компилацията. В противен случай, неизвестна величина. Ако е посочено, стойността е:

0, ако / арка на: Опцията компилатор IA32 е инсталиран.

1, ако / арката: ССИ е създадена възможност компилатор.

2, ако / арката: SSE2. / Arch: AVX или / арка: AVX2 е създадена възможност компилатор. Тази стойност се използва по подразбиране, ако / арка не е посочена опция компилатор. Когато / арката: AVX комплект, __AVX__ макро също е определена. Когато / арка: AVX2 показан като __AVX__ __AVX2__ и добре дефинирани.

В / арката (x86) Прочетете още.

_M_X64 определя като число буквално 64 процесор 100 за съставяне. В противен случай, неизвестна величина.

_MANAGED определя като 1, ако / CLR е настроен на компилатор. В противен случай, неизвестна величина.

_MSC_EXTENSIONS определят като един, ако / ZE (активиране езикови разширения) е посочена опция компилатор, който е по подразбиране. В противен случай, неизвестна величина.

__MSVC_RUNTIME_CHECKS определят като 1, ако един / РТК опции набор компилатора. В противен случай, неизвестна величина.

_MT определя като 1, ако / MD или / MDD (Многонишковата DLL) или / MT / или MTD другаде (многонишков). В противен случай, неизвестна величина.

_NATIVE_WCHAR_T_DEFINED определя като 1, ако / Zc: задаване на опция компилатор. В противен случай, неизвестна величина.

Подкрепете проекта - споделете линка, благодаря!