variable

ReferenceTOPKeywords

コマンド名

variable - namespace変数を作成、初期化します。

構文

variable ?name value...? name ?value?

解説

本コマンドは通常namespaceの中のnamespace evalコマンドの間で1つ、又は複数の変数を定義するために使われます。各変数name valueによって初期化され、最後の変数のvalueは省略可能です。

変数name が存在しない場合には新規作成されます。この場合valueの指定があればこのvalueを作成された変数に与えます。valueの指定がなければ変数は新しく定義されません。変数が既に存在する場合、valueの指定があれば変数はvalueにセットされます。valueの指定がなければ変数は変わりません。通 常name は無制限です (サブnamespaceに使われるname は除外です ) 。変数は現在のnamespaceにて作成されます。name はnamespace修飾子が着いている場合、変数は指定されたnamespaceにて作成され 、変数が宣言されたがまだ定義されていない場合、namespace whichコマンドで確認できますが、info existコマンドには反応しません。

variable コマンドが Tcl プロシージャの中で実行される場合関連するnamespace変数とリンクされたローカル変数を作成します(従ってこれらの変数は info locals.によってリストされます) 。この意味ではvariable コマンドは globalコマンドと似ています。異なるのはただglobalコマンドはグローバルなnamespaceにおける変数にしか連結しません。valueが与えられた場合、関連するnamespace変数の値としてセットされます。namespace変数が存在しなければ作成され、初期化(省略可能)されます。

name 引数は配列の要素をあらわすことができません。その為、name は配列全体を参照しなければなりませんし、また、(配列の場合)初期化valueを指定することもできません。配列の要素は変数が宣言された後に普通 の setもしくは array コマンドでセットします。

参照

global, namespace, upvar

キーワード

global, namespace, procudure, variable


Copyright © 1993-1997 Bell Labs Innovations for Lucent Technologies Copyright © 1997 Sun Microsystems, Inc. Copyright © 1995-1997 Roger E. Critchlow Jr.