Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Člen 'name' přepisuje 'method'. Za běhu existuje více kandidátů pro přepsání. Je to implementace závislá, která metoda bude volána.
Parametry metody, které se liší pouze podle toho, zda jsou ref nebo out nelze odlišit za běhu.
Chcete-li se vyhnout tomuto upozornění
- Dejte jedné z metod jiný název nebo jiný počet parametrů.
Příklad
Následující kód vygeneruje CS1957:
// cs1957.cs
class Base<T, S>
{
public virtual string Test(out T x) // CS1957
{
x = default(T);
return "Base.Test";
}
public virtual void Test(ref S x) { }
}
class Derived : Base<int, int>
{
public override string Test(out int x)
{
x = 0;
return "Derived.Test";
}
static int Main()
{
int x;
if (new Derived().Test(out x) == "Derived.Test")
return 0;
return 1;
}
}
Spolupracujte s námi na GitHubu
Zdroj tohoto obsahu najdete na GitHubu, kde můžete také vytvářet a kontrolovat problémy a žádosti o přijetí změn. Další informace najdete v našem průvodci pro přispěvatele.