「型推論」の版間の差分
Administrator (トーク | 投稿記録) 編集の要約なし |
|||
| (2人の利用者による、間の2版が非表示) | |||
| 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: プログラミング]] | |||