2009-08-22

リストの要素を変数に代入する(2)


名さんから lassign で良いのでは、というコメントをいただきました。ハイ、その通りです。ご指摘をありがとうございました。

Tcl/Tk リリース履歴 の Tcl 8.5a1 and Tk 8.5a1 (2004-03-03) における特記事項に、自分でちゃんとこのコマンドを書いておりました。そればかりか、恥ずかしいことに、なんと「要素の値を変数へ代入」で lassign の説明すらしています。それなのに、全然利用していませんでした。利用しないと忘れます。未だに、サブルーチン(proc コマンド)から戻り値をリストで受けとると、値を lindex コマンドで変数に振り分けていました。少なくとも最近書いている Tcl のコードは書き直す必要があります。未熟な知識に反省です。

$ tclsh
% lassign [list 1 2 3] a b c
% puts $a
1
% puts $b
2
% puts $c
3
% exit

0 件のコメント: