「型推論」の版間の差分
Administrator (トーク | 投稿記録) 編集の要約なし |
|||
| (同じ利用者による、間の1版が非表示) | |||
| 1行目: | 1行目: | ||
'''型推論'''(読み:かたすいろん)とは、一部の[[プログラミング言語]]に搭載されている機能で、[[変数]]の[[型]] | '''型推論'''(読み:かたすいろん)とは、一部の[[静的型付け]]な[[プログラミング言語]]に搭載されている機能で、[[変数]]の[[型]]を推論することで[[静的型付け]]っぽく利用できるという機能です。 | ||
==概要== | ==概要== | ||
<source lang="csharp"> | |||
// 整数と推論 | |||
var x = 0; | |||
// 単精度浮動小数点と推論 | |||
var y = 0f; | |||
// 文字列と推論 | |||
var z = "abc"; | |||
</source> | |||
動的型付けと似ていますが、型推論では一度確定した型は変更できないという点が異なります。 | |||
<source lang="csharp"> | |||
var a = 0; | |||
a = "abc"; // エラー、これはできない。 | |||
</source> | |||
一方、動的型付けでは数値型だった変数に後から文字列をぶち込んだりできてしまいます。 | |||
<source lang="php"> | |||
$a = 0; | |||
$a = "abc"; | |||
</source> | |||
[[C Sharp|C#]]などのように型推論と[[動的型付け]]の両方を搭載している[[プログラミング言語]]もあることからも解るように、どちらが優れているというものではなく、時と場合により使い分けるべきものである。 | [[C Sharp|C#]]などのように型推論と[[動的型付け]]の両方を搭載している[[プログラミング言語]]もあることからも解るように、どちらが優れているというものではなく、時と場合により使い分けるべきものである。 | ||
==関連項目== | ==関連項目== | ||
*[[動的型付け]] | * [[静的型付け]] | ||
* [[動的型付け]] | |||
[[category: プログラミング]] | |||
2025年7月11日 (金) 02:35時点における最新版
型推論(読み:かたすいろん)とは、一部の静的型付けなプログラミング言語に搭載されている機能で、変数の型を推論することで静的型付けっぽく利用できるという機能です。
概要[編集 | ソースを編集]
// 整数と推論
var x = 0;
// 単精度浮動小数点と推論
var y = 0f;
// 文字列と推論
var z = "abc";
動的型付けと似ていますが、型推論では一度確定した型は変更できないという点が異なります。
var a = 0;
a = "abc"; // エラー、これはできない。
一方、動的型付けでは数値型だった変数に後から文字列をぶち込んだりできてしまいます。
$a = 0;
$a = "abc";
C#などのように型推論と動的型付けの両方を搭載しているプログラミング言語もあることからも解るように、どちらが優れているというものではなく、時と場合により使い分けるべきものである。