こんにちは、ヒロキです。
今回から、Unityでのスクリプトを実行する上で、変数があります。
変数がなくてはゲームが作れないといってもいいです。
それほど、変数は大事なものになります。
ということで今回は変数について解説します。
- ゲーム開発未経験者
- ゲームの作り方がわからない人
- 初心者エンジニア
変数とは箱のような物
結論はデータを取り扱う、箱のようなものです。
プログラムを組みますと様々なデータを扱うことになります。
一時的に保存したい場合や色んなところにデータを渡したいなど、データを取り扱うにあたって、活躍するのが変数になります。
それでは変数について詳しく解説します。
以下のプログラムコードをご覧ください
int num = 1;と書いてあります。このnumが変数になります。
num(numberの略です)というのは名前です。
これは「intのデータ型を作り、numという名前をつけました。そしてその箱に1を入れました」という意味になります。
データ型とは?
変数にはデータ型という、形があります。
ここで注意してほしいことは、形には入れれるデータが決まっています。
さきほどのintを作りましたが、これは「整数型の箱を扱う」という意味になります。
そのためこの箱には整数しか入りません。
なのでさきほどのプログラムは「整数しか入らない箱numを作り、1を入れました」ということになります。
また、変数の名前は自分で決めることができます。
変数はどのように使うのか
変数はどのように使うのかという疑問があります。
例えば、↓のようにも使えます。
Startの処理のところにnumという変数を使っています。
Debug.Logはコンソールに文字を表示する命令文となります。
その括弧の中に変数(num)を入れる事で変数の値をみることができます。
また、文字列で表示することもできます。
stringというのは文字列を入れる箱です。
このように変数に入れることで、動的に変更することができるようになります。
変数の範囲
Startの外に変数を描きましたが、メソッドの中で使う事もできます。
↑のようにStartの中に書く事もできます。Startのような処理をメソッドと呼びます。
メソッドの中に書いた変数は、そのメソッドの中でしか使う事ができません。
↑のような場合はsの変数はStartでは使えますが、Updateでは使えません。
また、変数名は基本同じ名前の物を使うことはできないのです。
ですが、変数には有効範囲というものがあります。
↓をご覧ください。
StartとUpdateに同じ変数名がありますが、使うことができます。
このように{}で囲まれている中で変数宣言をした場合は、その中でしか変数は使えないため、同じ変数名を定義してもエラーにはなりません。
このような有効範囲をスコープと言います。
また、Startで書いているsの変数はUpdateに書いている変数sとは別物になります。
ここで注意してほしいのはプログラムは上から順番に読まれるので、
変数は必ず上に書くようにしてください。
基本的なデータ型
先ほど登場したintやstringはデータ型と呼ばれています。
基本的なデータ型は以下になります。
データ型名 | 扱えるデータ |
int型 | 整数 |
float型 | 有効桁数7桁の浮動小数 |
double型 | 有効桁数16桁の浮動小数 |
char型 | 1文字 |
string型 | 文字列 |
bool型 | 真か偽か |
こちらに関しては覚える必要はありません。このようなデータ型がある程度で認識しておけば大丈夫です。
ここで、聞きなれない単語が浮動小数がありますが、簡単に言いますと少数です。
ここで意識して欲しいことは、データ型の使える範囲が大きいほど、メモリを使います。
「有効桁数」や「文字列」など、沢山入るものを使うほどメモリを食います。
そのため、使用目的に合わせて変数を用意する必要があります。
まとめ
変数とデータ型という難しい単語が出ましたが、以下のような感じで覚えておけば問題ないです。
・変数は箱のようなもの
・箱にはデータ型がある
・変数を使い回したりできる
現状な私の書いたプログラムを真似して、だいたいの理解で大丈夫です。
プログラムは簡単なものではないですが、やっていくとわかっていくスキルなのでどんどん真似していきましょう。
コメントを残す