__w64
(特定的 Microsoft)可讓您將標記變數,如此當您編譯 /Wp64 ,編譯器會報告就會報告,如果您以 64 位元編譯器編譯的任何警告。
type __w64 identifier
參數
type
正在從 32 位元至 64 位元編譯器移植而來的程式碼中可能會造成問題的三種類型其中一項: int, 長,或資料指標。identifier
您正在建立該變數的識別項。
備註
重要
/Wp64 編譯器選項和__w64關鍵字所取代,將在未來版本的編譯器中移除。如果您是在命令列使用 /Wp64 編譯器選項,編譯器就會發出命令列警告 D9035。請改用以 64 位元平台為目標的 Visual C++ 編譯器,而非使用此選項和關鍵字來偵測 64 位元可攜性問題。如需詳細資訊,請參閱 設定程式的 64 位元 (Visual C++)。
有任何 typedef __w64起它必須是在 x86 32 位元和 64 位元 Itanium 處理器系列 (IPF)。
__w64應該在任何檔變更大小,32 位元和 64 位元平台之間的 typedef 也指定關鍵字。 這種類型的**__w64**應該只出現在 32 位元的定義 typedef。
__w64關鍵字會被忽略,如果編譯並不會使用**/Wp64**。
如需有關移植至 64 位元的詳細資訊,請參閱下列主題:
範例
// __w64.cpp
// compile with: /W3 /Wp64
typedef int Int_32;
#ifdef _WIN64
typedef __int64 Int_Native;
#else
typedef int __w64 Int_Native;
#endif
int main() {
Int_32 i0 = 5;
Int_Native i1 = 10;
i0 = i1; // C4244 64-bit int assigned to 32-bit int
// char __w64 c; error, cannot use __w64 on char
}