<< 前へ        次へ >>

ID : 112

#Define

機能

マクロ定義をします。

構文

#Define マクロ名 コード

指定項目

マクロ名
マクロ名を指定します。関数型マクロの場合は引数を"()"で囲みます。
コード
マクロ名を置換するコードを指定します。

解説

プログラム中のマクロ名コードで置き換えます。関数型マクロの場合には、引数も含めて置き換えられます。

マクロ名コードの間には、必ず1個以上のスペース文字を置かなければなりません。

マクロ名は命名規則に従って命名します。

マクロ名コードを囲む ( ) との間に、スペース文字を置いてはいけません。

マクロ名は、64文字以内でなければなりません。

関連項目

プリプロセッサ

注意事項

ダブルクォーテーション" "で囲まれた文字列の中のテキストは置き換えられません。

再帰的な置換は行われません。

#Define AA 5
#Define BB(x) 100*x + sin(x)

PrintDbg BB(AA) '完全にコンパイルされません。

上記の例のbb(aa)はプリプロセッサ工程で 100*aa + sin(aa) とコード生成されます。100*5 + sin(5) にはなりません。

#Define AA BB
#Define BB 100

PrintDbg AA '完全にコンパイルされません。

上記の例も PrintDbg AA は PrintDbg BB とコード生成されます。

用例

'!TITLE "マクロの定義"
' マクロ名で指定した文字列と計算結果を表示
Sub Sample_Define

' NAMEというマクロに"Desno Corporation"を割り当て
#Define NAME "Denso Corporation"

' mAREA(radius)をマクロとして宣言
#Define mAREA( radius ) PI * Pow( radius, 2 )

  Dim aaa As String
  Dim bbb As Double

  ' aaaに"Denso Corporation"を代入
  aaa = NAME

  ' bbbに PI * (10の2乗) の計算結果を代入
  bbb = mAREA( 10 )

  ' メッセージ出力ウィンドウに"Denso Corporation"を表示
  PrintDbg aaa

  ' メッセージ出力ウィンドウに計算結果を表示
  PrintDbg bbb

End Sub

ID : 112

<< 前へ        次へ >>