C#で暗黙型の変数を利用するコードを紹介します。
変数宣言時に初期地として代入される値から、変数の型を決定する型です。
暗黙型の変数を宣言するには下記の書式利用します。
暗黙型は宣言と同時に初期値を代入する必要があります。
代入は"="演算子を利用します。左辺に代入される暗黙型変数、右辺に代入する値を記述します。
参照は変数名を記述します。
暗黙型の変数は明示的な型を指定しないため、コンパイラが型を判定します。
下記コードのvalue変数はint型として扱われます。
var value = 10;
下記コードのvalue変数はstring型として扱われます。
var value = "penguin";
シンプルなプログラムで暗黙型の変数の挙動を確認します。
下図のUIを作成します。TextBox,Buttonを配置します。TextBoxはMultiLinesプロパティをTrueに設定します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace TypeInference
{
public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
int i = 10;
var j = 12;
var r = i + j;
//textBox1.Text += Convert.ToString(r) + "\r\n"; //この書式でも可
textBox1.Text += r.ToString() + "\r\n";
}
}
}
int型の変数"i"と暗黙型の変数"j"を宣言します。暗黙型の変数"j"には数値を代入してint型として利用します。変数"i","j"の和を求め結果を暗黙型の変数"r"に代入します。変数"r"をテキストボックスに表示します。
初期化時の値によって暗黙型の変数の型が決定される動作が確認できます。
プロジェクトを実行します。下図のウィンドウが表示されます。
[Button]をクリックすると計算結果の"22"が画面が表示されます。
暗黙型は宣言時に初期値を設定する必要があります。
var value;
value = 35;
というコードはコンパイルエラーになります。暗黙型は宣言時に型が決定されるため型決定後に別の型の値を代入することはできません。
下記のコードは2行目の代入部分でコンパイルエラーになります。
var value = 10;
value = "penguin";
下記コードは問題ありません。
var value = 10;
value = 120;