変数、定数
変数、定数
変数とは
変数とは、データを一時的に記憶しておくための領域です。
この変数に固有の名前を付けたものを変数名と呼び、記憶されているデータをその変数の値と呼びます。
Autoitで変数名を付ける場合、名前の先頭には必ず「$」を付け、使用できる文字は英数字、アンダーバー(_)のみです。
変数値は固定されていないので、プログラム中で何度も値を変更することができます。
配列を作成する場合、Dim、Local、Global のいずれかを使用して変数を宣言しなければなりません。
?Dim = 同名のグローバル変数がなければローカル(有効範囲が制限される)変数になります。
?Local = ローカル または 関数内(関数内でのみ有効)変数。
?Global = グローバル(すべての範囲で有効)変数。
これら Dim/Local/Global 3つのキーワードは、変数を使用する場所によって使い分けましょう。
Dim $AA[2] = ["1","3"]
;~ Local $AA[2] = ["1","3"]
;~ Global $AA[2] = ["1","3"]
MsgBox(0, '', $AA[0])
※注意事項
例えば次のコードですが、大文字と小文字の同名の変数が存在する場合、メッセージボックスで表示される結果は「6」となります。
Autoitでの変数名は、大文字と小文字は区別せず、同じものだと認識します。
$aa = 5
$AA = 6
MsgBox(0, '', $aa)
定数とは:
定数とは、簡単に言うと値の変更できない変数です。
キーワード Const を使用して宣言します。
例えば次のコードですが、Const で宣言した変数に「6」を代入しています。
その後に $AA = 5 というように「5」を代入しようとしても「Const」で宣言されているため、値の変更ができません。
Const $AA = 6
$AA = 5
MsgBox(0, '', $AA)
または、キーワード Enum を使用して宣言することもできます。
次のコードは Const と同様に値を変更することができません。
Enum $E1VAR1 = 3
$E1VAR1 = 2
MsgBox(4096, "", "Expect 0: " & $E1VAR1)
Const と違い、Enum は値を初期化することができます。
Global Enum $E1VAR1, $E1VAR2, $E1VAR3
MsgBox(4096, "", "Expect 0: " & $E1VAR1)
MsgBox(4096, "", "Expect 1: " & $E1VAR2)
MsgBox(4096, "", "Expect 2: " & $E1VAR3)
Global Enum $E2VAR1 = 10, $E2VAR2, $E2VAR3 = 15
MsgBox(4096, "", "Expect 10: " & $E2VAR1)
MsgBox(4096, "", "Expect 11: " & $E2VAR2)
MsgBox(4096, "", "Expect 15: " & $E2VAR3)
Global Enum Step *2 $E3VAR1, $E3VAR2, $E3VAR3
MsgBox(4096, "", "Expect 1: " & $E3VAR1)
MsgBox(4096, "", "Expect 2: " & $E3VAR2)
MsgBox(4096, "", "Expect 4: " & $E3VAR3)
注意:定数は既に存在する変数を宣言することはできません。