U

指定されたマクロの現在有効な定義を解除します。

構文

Linux*:

-Uname

macOS*:

-Uname

Windows*:

/Uname

引数

name

定義を解除するマクロの名前。

デフォルト

オフ

マクロの定義は解除されるまで有効です。

説明

このオプションは、指定したマクロの現在使用されていない定義を解除します。このオプションは、#undef 前処理ディレクティブと同等です。

Windows* システムでは、/u オプションを使用して、以前に定義したすべてのプリプロセッサー値の定義を解除できます。

IDE オプション

Visual Studio*: [Preprocessor] > [Undefine Preprocessor Definitions]

Eclipse*: [Preprocessor] > [Undefine Preprocessor Definitions]

Xcode*: [Preprocessor] > [Undefine Preprocessor Definitions]

代替オプション

なし

マクロを未定義にするには、次のコマンドを入力します。

Windows*:

icx /Uia64 prog1.cpp   ! C++ 固有 
dpcpp /Uia64 prog1.cpp   ! DPC++ 固有

Linux*:

icpx -Uia64 prog1.cpp   ! C++ 固有 
dpcpp -Uia64 prog1.cpp   ! DPC++ 固有

macOS*:

icpx -Uia64 prog1.cpp   ! C++ 固有
dpcpp -Uia64 prog1.cpp   ! DPC++ 固有

ANSI C マクロを未定義にしようとすると、コンパイラーは次のエラーを発行します。

無効なマクロ定義解除です。<マクロ名>