Link Search Menu Expand Document

** 内容はSRC2.2.33のものです **

UnSetコマンド

変数を消去

書式

UnSet variable

指定項目説明

variable変数名

解説

変数variable を消去します。配列を消す場合、変数名だけを指定すれば配列の要素すべてを、インデックスを付けて指定すれば配列の要素1つを消すことができます。

要素すべてを消去
UnSet X
要素を一つだけ消去
UnSet  X[1]
消去された変数の情報は変数の属性情報も含めて全て削除されてしまうため、[**Global**コマンド](/Global%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89/)で作成したグローバル変数や、[**Local**コマンド](/Local%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89/)で作成したサブルーチンローカル変数を**UnSet**コマンドで消去した後に再設定する場合は、再度**Global**コマンド、**Local**コマンドを実行する必要があります。なお、配列の要素のみを消去した場合はこの操作は必要ありません。

#変数を消去した後に、

UnSet array

#再度Local変数として作成

Local array

サブルーチンローカル変数をUnSetコマンドで消去してもその変数のために確保された領域はサブルーチンを出るまで開放されません。このため、UnSetコマンドで変数を消去しても、消去された変数はサブルーチンローカル変数の個数の上限である2000個の一部としてカウントされてしまうので注意してください。

消去する変数名 variable にEval関数を使うことで、消去する変数の指定に式を使うことが出来ます。

#変数xを消去する
a = "x"
UnSet Eval(a)