Windows API中有some new integer types支持Win64。他們並不總是得到支持;例如they aren't present in MSVC6。如何使用ifdef檢測Windows DWORD_PTR類型是否受支持?
如何編寫#if
條件來檢測<windows.h>
是否支持這些類型? (我的代碼需要編譯許多不同版本的Microsoft Visual C++,包括MSVC6,因此我需要提供我自己的這些類型的定義,#if
在較新的編譯器中禁用它們)。
(對於搜索,類型的完整列表是:DWORD_PTR,INT_PTR,LONG_PTR,UINT_PTR,ULONG_PTR)
只是因爲編譯器VC6並不意味着這些類型沒有定義,通常你會一起使用VC6帶着幾分最新的平臺SDK – Anders 2010-04-27 17:17:22
Anders的評論應該是公認的答案,更新平臺SDK,不要」嘗試編寫過時版本的代碼。 – Blindy 2010-04-27 17:30:03
「#ifdef MAXULONG_PTR」是完美的,謝謝! – user9876 2010-04-28 10:10:41