2013-06-29 42 views
6

在將Visual 2012 C++項目遷移到目標64位平臺時,我們是否應該將預處理器定義從WIN32更改爲WIN64?WIN32在64位Windows平臺中的預處理器定義

現在,我已經建立了項目與下面settigns

  • MACHINE(指定目標平臺)設置爲/MACHINE:X64

  • 目標環境設置爲/env x64

  • 在C/C

    ++項目設置 - >代碼生成,結構成員 Allignment 8個字節

請指引我還有什麼項目設置我應該目標要改變。

+0

[我應該在64位構建中同時定義\ _WIN32和\ _WIN64?](http://stackoverflow.com/questions/6679396/should-i-define-both-win32-and-win64-in- 64bit-build) –

+0

感謝@Hans Passant – Amitav

回答

2

您的意思是_WIN32和_WIN64宏嗎?如果你指定了所有的參數(見P.S.),那麼你不需要改變你的代碼。在64位解決方案中必須定義_WIN32和_WIN64兩者。 _WIN32宏指定您可以使用Win32 API和_WIN64宏指定編譯爲64位模式。此外,您可以爲Itanium(_M_IA64)和x86-64(_M_AMD64)使用不同的宏。詳見MSDN

P.S.你是否手動選擇平臺參數?您可以通過VS指定它: 1.生成菜單 - >配置管理器。 2.在Active Solution Platform中選擇新建。 3.鍵入或選擇新平臺 - > x64,然後單擊確定。 4.現在在「平臺」行中,您可以簡單地選擇x64。