#undef 指示詞 (C/C++)
移除 (取消定義) 先前使用 #define
建立的名稱。
語法
#undef識別碼
備註
#undef 指示詞會移除識別碼 的 目前定義。 因此,預處理器會忽略後續出現的 識別碼 。 若要使用 #undef 移除巨集定義,請只提供宏 識別碼 ,而非參數清單。
您也可以將 #undef 指示詞套用至沒有先前定義的識別碼。 這樣可確保識別項處於未定義狀態。 宏取代不會在 #undef 語句內 執行。
#undef 指示詞通常會與 #define
指示詞配對,以在識別碼具有特殊意義的來來源程式中建立區域。 例如,原始程式的特定函式可以使用資訊清單常數,以定義不會影響程式其他部分的環境特定值。 #undef 指示詞也適用于 #if
指示詞,以控制來來源程式的條件式編譯。 如需詳細資訊,請參閱 #if、#elif、#else 和 #endif 指示詞 。
在下列範例中 ,#undef 指示詞會移除符號常數和宏的定義。 請注意,其中只會提供巨集的識別項。
#define WIDTH 80
#define ADD( X, Y ) ((X) + (Y))
.
.
.
#undef WIDTH
#undef ADD
Microsoft 特定的
您可以使用 選項從命令列 /U
中取消定義宏,後面接著要未定義的宏名稱。 發出此命令的效果相當於檔案開頭的 #undef
宏名稱 語句序列。
END Microsoft 特定的
另請參閱
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: