C# 開発

C# 型推論を使用して、変数の型を自動的に決定する

準備

(なし)

デザイン

  • フォーム (Form1) にボタン (button1) を配置します。
  • フォーム (Form1) にリストボックス (listBox1) を配置します。

サンプルコード (C#)

namespace WinFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
        }

        private void button1_Click(object sender, EventArgs e)
        {
            var v1 = 10;
            var v2 = 10.5;
            var v3 = true;
            var v4 = "Hello";

            listBox1.Items.Add(v1.GetType().FullName);
            listBox1.Items.Add(v2.GetType().FullName);
            listBox1.Items.Add(v3.GetType().FullName);
            listBox1.Items.Add(v4.GetType().FullName);
        }
    }
}

解説

型推論とは、型を明示的に指定しなくても初期化時に指定される値によって変数の型を自動的に決定する仕組みです。従って、型推論によって変数を宣言する際には、初期化も同時に行う必要があります。C# では var で、VB.NET では型指定なしの Dim によって型推論を行います。

一見すると、どのような値でも代入できる変数を作成するように考えられますが、そうではありません。変数の宣言と初期化時に型は決定されます。そのため、以降のコードで違う型の値を代入することはできません。例えば、型推論によって、int 型に設定された変数に文字列を代入することはできません。

結果

動作確認環境

Visual Studio 2022 Professional (.NET 7 C#11)

ログ

初版:2016.01.26 Visual Studio 2015 Professional (C# 6.0)

-C# 開発