SMILE BASIC 小技(9)
PRGINSで動的にコードを追加する方法。
PRGINSで他のスロットにコードを追加した後にUSEを実行すると、追加したコードを実行することができる。
PRGINS毎にUSEを使えば、何度でもコードを追加できる。
例:
VAR DQ$=CHR$(34) PRGEDIT 3 PRGDEL -1 PRGINS "DEF A" PRGINS " ?"+DQ$+"A"+DQ$ PRGINS "END" USE 3 CALL "3:A" PRGINS "DEF B" PRGINS " ?"+DQ$+"B"+DQ$ PRGINS "END" USE 3 CALL "3:B"
USEが2度現れているが、問題なく実行できる。
これを応用する例としては、ツール系のプログラムで設定ファイルにコードを書いて追加するとか、ユーザーに入力させたコードを実行する等が考えられる。
ただし、一般的な注意として、最初にプログラムを実行したスロットをPRG系命令で編集することはできないので気を付ける必要がある。