今回の新機能は、他のプログラミング言語を経験された方から期待されていた機能ですが、
多少複雑な内容ですので、TTSneoの初心者やプログラミングの経験がない方などは、無視してもかまいません。
現在の機能には影響ありませんし、TTSneoでは聞きなれない言葉を使っていますので、もし興味があればご覧ください。
以前から要望があった手順内でのみ有効な変数(ローカル変数)に対応しました。
また、これと同時に、オリジナル命令で指定した引数の情報が他の手順が実行されることで消えてしまう問題も修正しました。
このバージョンアップにより、オリジナル命令をより気軽に安定して利用することが可能になり、複数のTTSファイルに分散したり、手順を使い回ししたりなどと、高度なプログラミングが可能になります。
TTSneo0.95では、ローカル変数を宣言する「ここだけの変数は」命令を追加しました。
ここだけの変数は、[ローカル変数名]
この命令を手順の中で命令すると、手順の中でのみ利用できる変数(ローカル変数)が作成されます。
この変数は、手順の中でのみ有効なので、手順が終了すると、内容は消えてしまいます。
また、途中で他の手順の呼び出して、同じ名前の変数が操作されても、もとの変数には影響がありません。
下の例では、手順によって「文字」変数の内容が違っています。
例
処理
文字を表示 ’変数がないので、文字と表示される
手順は 処理
ここだけの変数は、文字
文字は、「abc」
文字を表示 ’「abc」と表示される
処理2
文字を表示 ’処理2に影響されず、「abc」と表示される
終わり
手順は 処理2
ここだけの変数は、文字
文字は、「efg」
文字を表示 ’「efg」と表示される
終わり
経験者向け補足
TTSneoは、変数の宣言はありませんので、基本的にはすべてグローバル変数として扱われます。
ただ、このように「ここだけの変数は」命令を使って宣言した変数のみローカル変数として扱われます。
すでにグローバル変数に、同名の変数が存在した場合は、宣言したローカル変数が優先されます。
詳しくは、上の例をご覧ください。
注意点
TTSneoでは、ローカル変数を定義するのは特殊の場合と考えていますので、特別な理由がない限りは「ここだけの変数は」命令は利用しないことをお勧めします。
以前のTTSneoでは、下のようなプログラムを実行すると、オリジナル命令を呼び出したときの情報(引数)の値が維持されず、正しく動作していませんでしたが、最新版ではこの不都合も修正しました。
例
「abc」を処理
内容を表示
手順は 処理([内容]を)
内容を表示
「efg」を処理2
内容を表示
終わり
手順は 処理2([内容]を)
内容を表示
終わり
早足で書いたため、理解できないところなどもあると思いますが、例などを参考にしてください。