C# でのパラメーター指定によるコンストラクター制約
C# では、ジェネリック メソッドを使用して型パラメーターに制約を課すことができます。たとえば、次のコードは、パラメーター型 T がパラメーターなしのコンストラクターを持つことを必要とする制約を示しています。
public class A { public static T Method<T>(T a) where T : new() { //...do something... return new T(); } }
public class A { public static T Method<T>(T a) where T : new(float[,] u) { //...do something... return new T(new float[0,0]); } }
解決策
この制約は使用できないため、回避策を採用し、デリゲートを使用して型 T のオブジェクトを初期化できます。
以上がC# のジェネリック メソッドは型パラメーターを特定のコンストラクターに制限できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。