﻿# Использование макросов \_WIN64/WIN64

Макрос \_WIN64 всегда предопределяется компилятором автоматически во время сборки для любой 64\-битной ОС семейства Windows, поэтому никогда не стоит переопределять этот макрос вручную\. Стоит помнить, что \_WIN64 будет определён компилятором вне зависимости от используемой 64\-битной архитектуры \(как для x64, так и для IA64\), поэтому в случае необходимости написания кода специфичного для одной конкретной платформы следует использовать такие предопределённые макросы, как \_M\_IA64 и \_M\_AMD64\. \_WIN64 может быть определён и одновременно с \_WIN32 в случае необходимости использования Win32 API в 64\-битной сборке\.

Макрос WIN64 не является стандартным предопределяемым макросом компилятора VisualC\+\+ и не используется в системных include\-файлах VC\+\+, он может быть свободно определён в коде\. Его часто используют в своих проектах независимые разработчики для идентификации различных версий собственных API\.

## Библиографический список

1. Visual Studio vNext Forums\. [64 bit Compiler\.](https://social.msdn.microsoft.com/Forums/vstudio/en-US/b09929e7-ef2f-40c4-9d25-bd6bb7adf8e9/64-bit-compiler?forum=vcgeneral)
1. MSDN Library\. [Predefined Macros\.](https://msdn.microsoft.com/en-us/library/b0084kay(v=VS.100).aspx)
1. База знаний\. [Как с помощью \#ifdef узнать, что собирается 64\-битный проект в Visual Studio](https://pvs-studio.ru/ru/blog/posts/k0032/)\.