4

同僚が、.NET アプリケーションで使用する必要のある C# クラスをいくつかくれました。
見たことのないタイプミスがあり、インターネット上で説明が見つかりません...

コードは次のとおりです。

public void GoTo<TView>() where TView : Form, new()
{
    var view = Activator.CreateInstance<TView>();

    //si on vient de creer une startup view alors on affiche l'ancienne
    //la reference a la nouvelle sera detruite en sortant de la fonction GoTo
    if (view is StartupForm)
    {
        ShowView(_StartupForm);
    }
    else ShowView(view);

}

new()メソッド宣言の最後にあるキーワードは何ですか?

4

3 に答える 3

11

型パラメータ制約です。文字通りTView、パラメーターなしのパブリック コンストラクターが必要であることを意味します。

于 2016-01-15T14:01:16.907 に答える