今回はプログラミング初心者にとって最初の壁「配列」なわけですが・・・
※以下一行技術的な側面からのグチに近いので理解する必要なないです。
オートキャスト+可変データ型なVarant型の配列ってどうなんだろう・・・・・・・・・
宣言しておいて後から要素追加するなんてでき・・・・・・ん、まてよ?
ReDimできないんだろうか・・・
と思ってやってみたらできとるがな・・・・流石Variant・・・・。
まぁそもそもLong型とかないんだからVarinatで配列作るしかないからしょうがな・・・ブツブツ・・・
とまぁVB6.0出身者のグチが炸裂したところで配列ですが・・・
moji1="a"
moji2="b"
moji3="c"
for
i=1 to 3
msgbox(※1)
next
※1の部分で、
「moji+i」でfor文1回目「moji1」2回目「moji2」・・・
って指定できたら便利だと思いません?
でもこれはできないんですよねぇ・・・・
そこで登場するのが「配列」
これは同じ名前(例えば「moji」)
で「mojiの1番目」とか「mojiの2番目」といった名前を付けて変数を扱う事ができる機能です。
ちなみにこの「配列」という機能はプログラム上で非常に重要な役割を果たすので
JavaからC言語から何から殆どの言語に搭載されています。
でもこれって理解するのしんどいんですよね。
まぁまず配列を使うためには「何番目まで使用するか」を指定しなければなりません。
(必ず0番目から始まります)
それが、動画で出ている
dim
nico(3)
な訳ですが、
「dim」というのは、本来プログラムは変数を利用する前に
「宣言」という事をしなければなりません。
「このプログラムでメモリ上のこの場所を使いますよ」と予め言っておかないと
他のプログラム(例えばIEなど)がその領域に操作を加えてしまって深刻な問題に繋がるからです。
その「使いますよ」という宣言が「dim」です。
動画で利用しているVBスクリプトは、
「宣言」をしなくてもプログラム上に宣言されていない変数がある場合、
VBSファイルを実行(開いた)した時にそれを見つけて予め勝手に宣言してくれちゃうので宣言しなくても問題はないのです。
ですが「配列」の場合、後から何番目まで使用するか変更できない
(実はできちゃうんですが、とりあえずは変更できない
と覚えた方が理解しやすいかと思うので)
ので、先に宣言しておかなければならないのです。
※配列の使用数を変更する方法はどこかで書きたいと思います。
この場合、
nico(0)
から
nico(3)
まで変数が宣言される訳ですが、配列を理解するために、
nico
(0)
(1)
(2)
(3)
という「4つの変数の箱」を良く使います。
※この「4つ」を「配列の要素数」と言いますが用語なので覚えなくても問題はありません
これは簡単に言えば
nico(0)
nico(1)
nico(2)
nico(3)
は「別の名前の変数」だと思ってしまっていいという事なのです。
ただ、()の中に値の変わる変数を指定できるので
nicoの何番目という情報を変化させる事ができるのです。
動画では
nico(0)="一個目"
nico(1)="二個目"
nico(2)="三個目"
nico(3)="四個目"
となっていますが、理解し辛いという人は
nicoという変数の1番目に「"一個目"」が入り・・・・
と考えるのではなく、
moji="一個目"
と書いた場合と同じように
「nico(0)」という名前の変数の中に「"一個目"」が入り・・・
と考えれば理解しやすくなるのではないでしょうか。