this msdn documentation共分散および反分散については、out
キーワードを使用して汎用パラメータ共変を宣言することが説明されています。代理人の共分散については、msdnのマニュアルに間違いがありますか?
outキーワードを使用すると、汎用型パラメータ共変を宣言できます。
はその後out
キーワードの使用方法の一例を与えられ、その後、このステートメントは、「私が呼ばれるべきだと思うおり、「反変」であるメソッドのパラメータとしてデリゲートについて言われているにしていなぜならそれはまだout
と表示されているからです。
このルールには1つの例外があります。 反例のジェネリックデリゲートをメソッドパラメータとして使用している場合は、その型をデリゲートのジェネリック型パラメータとして使用できます。
は、この例では、次のとおりです。
interface ICovariant<out R>
{
void DoSomething(Action<R> callback);
}
を共変ではなく、反変と呼ばれるデリゲートパラメータではないでしょうか?
'Action ' *は反例です;共変ではありません。 – Servy