Thema: C# Kovarianz in C#?

Einzelnen Beitrag anzeigen

Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#1

Kovarianz in C#?

  Alt 21. Apr 2008, 15:30
Hallo Leute,

folgender Code
Code:
class A
{
  public virtual A Foo()
  {
    return new A();
  }
}
   
class B: A
{
  public override B Foo()
  {
    return new B();
  }
}
wirft den Fehler
Code:
'Covariant.Program.B.Foo()': return type must be 'Covariant.Program.A' to match overridden member 'Covariant.Program.A.Foo()' (CS0508)
Sollte das die Kovarianz nicht zulassen? Ich meine mich erinnern zu können, dass sowas in Java geht.
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat