There is such a thing as __ w64 in Visual C ++ 9. I came across it trying to port my native C ++ DLL to 64 bits. In particular, crtdefs.h has this nice snippet:
#if !defined(_W64) #if !defined(__midl) && (defined(_X86_) || defined (_M_IX86)) && _MSC_VER >= 1300 #define _W64 __w64 #else #define _W64 #endif #endif
which, if I understand correctly, implies that for 64-bit _W64 is defined as an empty string and has no effect, but for 32-bit it is defined as __w64 .
I tried to define _W64 as an empty string and __w64 in turn, and at least both when the project is compiled in a 64-bit configuration.
So both _W64 and __w64 look useless. How do I plan to use them and how to define _W64 in 64-bit projects?
source share