2

拡張メソッドのパラメーターに既定のパラメーター値を指定できないのはなぜthisですか?

public static User CheckLogin(this User user = null)
{
    ...
}

エラー 108 'this' パラメーターの既定値を指定できません

しかし、次のように書くとコンパイルは成功します。

public static User CheckLogin([DefaultValue(null)]this User user)
{
    ...
}

MSが最初の種類のデフォルトパラメータ割り当てを制限し、2番目を許可する理由を誰か説明できますか?

4

1 に答える 1