Skip to main content

変数と型

練習課題

変数の宣言と代入

ゲームを作っている間に、ゲームに関するいろんなデータを管理しなければならない。以下のデータについて考え、最も適する「データ型」を選択してください。

**データ** **型** **例**
プレーヤーの点数 整数型(int)
int points = 100;
プレーヤーの名前    
現在持っているアイテムの数    
車が走った距離    
ゲームの初期化が終わった?    
ステージのタイトル    
キャラクターのセリフ    
ゲーム終了かどうか    
残りの体力    
アイテムのコスト    
レースコースの名称    

C#を読みましょう

以下の表は、C#で書いた命令とその日本語の意味が書いてある。空枠を完成してください。

**C#** **日本語**
```c# int counter; ``` 何か数える「カウンター」整数型変数を宣言
```c# float height = 1.70f; ```  
```c# float distance = 100; ```  
  「セーブファイル名」専用の変数を宣言し、

「save0001.dat」を代入

```c# bool isTimeOut = false; ```  
  ステージの中に残っている「コイン」の数の変数を宣言
  プレーヤーがドアを開くための「キーカード」を拾ったかを表す変数を宣言し、「いいえ(偽)」で始まる。
```c# string bossName = ""; ```  
  整数型の変数「a」を宣言し、「10」を代入する。

整数型の変数「b」を宣言し、「5」を代入する。

小数型の変数「c」を宣言し、「a割るb」を代入する。

```c# string firstName = "太郎"; string lastName = "大原"; string fullName = lastName + " " + firstName; ```  

初期化の値で型を決める:暗黙的な型指定「var」

今まで、変数を宣言するときに、どのデータを入れるべきかを「型」で指定しなければならない。ただ、宣言の時に一緒に何かの「値」を代入する場合、その「値」から直接に「型」を判断し、自動的に変数の「型」を指定することもできる。

この場合は、変数を「var」で宣言してください。

例:

var counter = 0;        // 0 は整数なので、counterはintになる
var height = 1.70f;     // 1.70fは実数(小数)なので、heightはfloatになる
var name = "Player 1";  // "Player 1"は文字列なので、nameはstringになる
var isGameOver = false; // falseは「偽」なので、isGameOverはboolになる

「var」を使うことにより、代入する数値に合わせて、型を決める


Q. いつ「var」を使うか?
A. 自由に使えるが、普通に「一時的に使い捨てる変数」を使うケースが多い。

Q. 使えない時もある?
A. 以下の場合は「var」を使えない

  • 宣言のみの時(代入なし)
var value = 10;  // OK!
var value;       // NG
  • メソッドの「引数」と「戻り値」(※メソッドについてはまた後で)
  • クラスの「メンバー変数」(※クラスとメンバー変数についてはまた後で)