この記事では主にC#ジェネリック型を紹介します。これは非常に優れており、参照値があります。必要な友人は参照してください
前の記事では、型システム (値型と参照型) の簡単な分析を紹介しました。 C# の場合 次に、この記事を通じて C# のジェネリック型について説明します
ジェネリックを上手に使用すると、コードの再利用性がすぐに向上します。ほんの少しだけです。後で学んで習得すべき知識がまだたくさんあるからです。まず、Dictionary
static void Main(string[] args) { Dictionary<int, string> result = GetAll(); } public static Dictionary<int, string> GetAll() { var dic = new Dictionary<int, string>(); dic.Add(1, "aaa"); dic.Add(1, "aaa"); dic.Add(1, "aaa"); return dic; }
ジェネリックの 2 つの形式: ジェネリック型 (クラス、インターフェース、デリゲート、構造体) とジェネリック メソッド、TKey と TValue は型パラメーターであり、渡される int と string は Out 型パラメーターであることがわかります。は実際の型の単なるプレースホルダーです。型パラメーターに実際のパラメーターを提供しないジェネリックは、非構築ジェネリック型と呼ばれます。型パラメーターが指定されている場合、それらは構築型と呼ばれ、その型のインスタンスが使用されるオブジェクトです。以下関係図。
ジェネリックの判断は頭が痛いです 次に、丁寧に説明しないといけませんが、本に書いてあることが理解できないので、頑張ってください。それについて話してください。よくわからない場合は、本の説明を読んでください。まず下の図を見てください
このような汎用メソッドを見るときは、実際の使用時にパラメータの型を置き換える必要があります (前述したように、パラメータの型は実際には型の実パラメータのプレースホルダーです) , use string to replace T, use int to replace TOutput
public static List<int> GetAll(Converter<string, int> conv) { }
このうち、Converter
以上がC# ジェネリック型の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。