Questions marquées «covariance»

La covariance, la contravariance et l'invariance décrivent comment la hiérarchie d'héritage de type existante change lorsqu'elle est soumise à une certaine transformation (comme l'utilisation dans les génériques). Si la transformation conserve l'ordre de la hiérarchie d'origine, elle est "covariante". S'il l'inverse, il est «contravariant». S'il le casse, il est "invariant".

35
Qu'est-ce qui rend covariant ValueTuple?

Cela se compile correctement en C # 7.3 (Framework 4.8): (string, string) s = ("a", "b"); (object, string) o = s; Je sais que c'est du sucre syntaxique pour les éléments suivants, qui se compile également correctement: ValueTuple<string, string> s = new ValueTuple<string, string>("a",...