Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
I membri ereditati 'member1' e 'member2' hanno la stessa firma nel tipo 'type', quindi non possono essere sottoposti a override
Questo errore risulta dall'introduzione di generics. In genere, in una classe non possono esistere due versioni di un metodo con la stessa firma. Con l'introduzione di generics, invece, è possibile specificare un metodo generico che può duplicare un altro metodo se ne viene creata un'istanza con un tipo specifico.
Esempio
Quando viene creata un'istanza di C<int> , vengono generate due versioni del metodo F con la stessa firma. Di conseguenza, l'override nella classe D non riesce a determinare la versione su cui operare.
L'esempio seguente genera l'errore CS0462.
// CS0462.cs
// compile with: /target:library
class C<T>
{
public virtual void F(T t) {}
public virtual void F(int t) {}
}
class D : C<int>
{
public override void F(int t) {} // CS0462
}