Les exemple ci-dessous en Mono compile bien régulière 2.10.9:MonoTouch et variantes supportant les interfaces génériques
namespace covarianttest
{
public interface ITest<out T> : IEnumerable<T>
{
}
}
Cependant, lorsque je tente de compiler contre MonoTouch 6.0.8 Je reçois cette erreur:
Erreur CS1961 : Le paramètre de type covariant 'T' doit être invariantement valide sur 'covarianttest.ITest'
Donc, dois-je supposer que MonoTouch ne supporte pas encore l'extension d'interfaces génériques covariantes/contravariantes? Si oui, quelle est la solution de contournement recommandée pour cette situation dans MonoTouch?
Donc, vous dites que MonoTouch ne supporte pas Co/Contra-variance pour le moment, et que ça pourrait être correct dans le futur? –
Oui, la plupart des fonctionnalités .NET/CLR 4.x ne sont pas encore disponibles dans MonoTouch, mais elles seront disponibles une fois que MT sera réinitialisé sur Mono 3.0 (et le nouveau compilateur 'mcs'). – poupou
Merci @poupou! –