C#, C♯, C#相談室 Part51
at TECH
547:539,541
09/02/25 15:44:40
>>544
共通の基底クラスが必要なければ、
class Base<T> where T : Base<T>, new()
{
public static T Create() { return new T(); }
}
class A : Base<A> { }
class B : Base<B> { }
でも可だと思う。A:Base<foo>と書く時のfooはAのみに制約されて、それ以外を書くとコンパイル
エラーではねられる。継承先のクラスのインスタンスをプロパティの設定などの処理とともに生成
するメソッドを持つクラスを作る(変態的だけど)わりと一般的なテクニック。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5373日前に更新/228 KB
担当:undef