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