型推論 | Programming Place Plus 用語集

トップページ用語集

名称

解説

プログラミング言語がもつ機能の1つで、ソースコード上で変数や、関数仮引数戻り値などのを明示的に記述せずとも、コンパイラなどが自動的に判断、決定するというものです。

型推論の機能を備えているかどうか、またどのような仕様であるかは、プログラミング言語によって異なります。基本的に静的型付け言語の機能であり、C++、C#、Java などが型推論の機能を備えています。また、(静的型付けを採用する)関数型プログラミング言語のほとんどが型推論の機能を持っています。

たとえば、var a = read_data() のように、変数を宣言するときに型を明確に記述せず、varauto といった代わりのキーワードを記述しておくと、コンパイラなどが型を判断して確定させます。この例の場合、read_data という関数の戻り値を使って初期化しようとしているため、変数 a の型は、read_data関数の戻り値の型と同じものにすればいいと判断できます。

同様に、関数やラムダ式の仮引数は、実引数の型から判断できますし、関数宣言に記述する戻り値の型は、関数内でを呼び出し元へ返すコードを確認すれば判断できます。

C++ の型推論の例が、新C++編「イテレータ」にあります。

動的型付け言語でも、var a = read_data() のような記述をすることがありますが、これはプログラムの実行時に、実際に read_data関数が返した値の型になるということであり、型推論しているわけではありません。


参考リンク

更新履歴


用語集のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る