我正在寻找一种方法来可靠地确定 C + + 代码是否正在以32位和64位编译。我们已经提出了我们认为是合理的解决方案,使用宏,但好奇的是,如果人们可以想到的情况下,这可能会失败,或者是否有一个更好的方法来做到这一点。请注意,我们正试图在一个跨平台、多编译器的环境中实现这一点。
#if ((ULONG_MAX) == (UINT_MAX))
# define IS32BIT
#else
# define IS64BIT
#endif
#ifdef IS64BIT
DoMy64BitOperation()
#else
DoMy32BitOperation()
#endif
谢谢。