ローカル変数を宣言するには(AutoLISP)

ローカル変数には、ローカル変数が定義されているユーザ定義関数内でのみアクセスできます。

  1. defun 関数の引数と変数のリストに、スラッシュ( / )の区切りを追加します。
  2. スラッシュの後に、各ローカル変数をリストします。

    スラッシュと各ローカル変数の間には必ず少なくとも 1 つのスペースを含めてください。

次の LOCAL 関数の例では、2 つのローカル変数 aaabbb が定義されています。

  1. AutoCAD のコマンド プロンプトに対して、次のコードを入力します。
    (defun LOCAL ( / aaa bbb)
      (setq aaa "A" bbb "B")
      (princ (strcat "\naaa has the value " aaa ))
      (princ (strcat "\nbbb has the value " bbb))
      (princ)
    )
    LOCAL
    注: 既存の LSP ファイルにサンプル コードを追加することも、新しい LSP ファイルを作成することもできます。次に、APPLOAD[アプリケーション ロード]コマンドを使用して LSP ファイルをロードします。
  2. 次のコードを入力して、LOCAL 関数を使用する前に 2 つのグローバル変数を定義します。
    (setq aaa 1 bbb 2)
    2
  3. 次のコードを入力して、2 つのグローバル変数の値を確認します。
    !aaa
    1
    
    !bbb
    2
  4. 次のコードを入力して、2 つのローカル変数の値を確認します。
    (local)
    aaa has the value A
    bbb has the value B

    aaabbb の値が関数内で局所的に使用されたことがわかると思います。aaabbb の現在の値は、まだそのグローバル値に設定されています。このことは、次の文で確認することができます。

    !aaa
    1
    
    !bbb
    2