定数

よく使う数は定数として宣言しておくと後から見直した時に意味も通りやすく、また修正も容易です。





記述方法

変数の場合におけるvarの代わりにconstを用いることで定数を宣言できます。定数を宣言するときは必ず初期値が必要です。より正確には、コンパイル時に代入値が決定している必要があります。初期値を指定しなかった場合エラーが返ります。
  1. func Main()
  2. const e: float :: 2.718281828459045 {定数eが定義されます}
  3. do Dbg@Log(e.ToStr()) {変数と同様に使えます}
  4. {do e :: 3 {コンパイルエラー。代入はできません}}
  5. end func

細かい注意点

Ver.1.00現在、配列の定数は宣言できません。ただし[]char型の定数は定義できます。
  1. func Main()
  2. {const foo: []int :: #[3]int {初期値が無いというエラーが出る}}
  3. {const bar: []float :: [1.0, 2.0, 3.0]float {場合によってこれだけではエラーが出ないが、値を参照しようとするとエラー}}
  4. const str1: []char :: "ABC" {これは大丈夫}
  5. const str2: []char :: ['a']char {これも大丈夫}
  6. end func
class内で宣言した定数を参照する場合、thisは要らないようです。これは、Kuinのconstは他言語と違い完全に静的なため。Kuinにおける「.」は動的アクセスの意味を持つ。
  1. class CSample
  2. const foo: int :: 3
  3. func getfoo(): int
  4. return foo {これでOK}
  5. {return this.foo} {コンパイルエラー}
  6. end func
  7. end class