/U、/u (取消定義符號)
編譯 /U
程式選項會取消定義指定的預處理器符號。 編譯器 /u
選項會取消定義編譯器所定義的 Microsoft 特定符號。
語法
/U
[ ] symbol
/u
引數
象徵
要取消定義之預處理器符號。
備註
/U
和 /u
選項都無法取消定義使用 指示詞所建立的 #define
符號。
選項 /U
可以取消定義先前使用 /D
選項定義的符號。
根據預設,編譯器可能會定義大量的 Microsoft 特定符號。 以下是一些常見的方法:
符號 | 函式 |
---|---|
_CHAR_UNSIGNED |
預設字元類型為不帶正負號。 指定選項時 /J 定義。 |
_CPPRTTI |
針對使用 /GR 選項編譯的程式碼定義。 |
_CPPUNWIND |
針對使用 /EHsc 選項編譯的程式碼定義。 |
_DLL |
指定選項時 /MD 定義。 |
_M_IX86 |
根據預設,針對 x86 目標定義為 600。 |
_MSC_VER |
定義為每個編譯器版本的唯一整數值。 如需詳細資訊,請參閱 預先定義的宏 。 |
_WIN32 |
為 WIN32 應用程式定義。 永遠會定義。 |
_MT |
指定 或 /MT 選項時 /MD 定義。 |
如需 Microsoft 特定預先定義宏的完整清單,請參閱 預先定義的宏 。
在 Visual Studio 開發環境中設定這個編譯器選項
開啟專案的 [屬性頁] 對話方塊。 如需詳細資料,請參閱在 Visual Studio 中設定 C ++ 編譯器和組建屬性。
選取 [ 組態屬性 > C/C++ > 進階 ] 屬性頁。
修改 Undefine 預處理器定義 或 取消定義所有預處理器定義 屬性。
若要以程式方式設定這個編譯器選項
另請參閱
MSVC 編譯器選項
MSVC 編譯器命令列語法
/J
(預設字元類型為不帶正負號)
/GR
(啟用執行時間類型資訊)
/EH
(例外狀況處理模型)
/MD
、 、 /MT
/LD
(使用執行時間程式庫)
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應