C Sharpのデータ型
#クラス型 object dynamic string #配列型 #デリゲート型 #匿名型
#インターフェイス型
GetEnumerator()メソッドが定義された型では、foreach構文を利用することができる。
System.Type型を利用することで、様々な型情報にアクセスすることができる。
この型情報からリフレクションによるプログラミングに対応する。
次のコードはSystem.Type型の例である。
typeof(T)はTの型情報を取得する。
obj.GetType()はobjの実行時型情報を取得する。
Type.GetType(完全修飾型名)は指定した完全修飾型名の型情報を取得する。
Deconstruct()メソッドが定義された型では、分解構文を利用することができる。拡張メソッドによる定義でも構わない。
#ポインタ型
ポインタ型はobject型と相互に変換することができず、参照型にも値型にも相当しない。
「任意の型について」記載している内容は、ポインタ型が当てはまらないことも多いことに留意されたい。例えば、#ジェネリクスの型引数にポインタ型を指定することはできない。