Compilerfout CS0546
'accessor': kan niet worden overschreven omdat 'eigenschap' geen overschrijfbare set accessor heeft
Een poging om een van de toegangsmethoden voor een eigenschap te overschrijven, is mislukt omdat de accessor niet kan worden overschreven. Deze fout kan optreden als:
de eigenschap basisklasse wordt niet gedeclareerd als virtueel.
de eigenschap basisklasse declareert niet de get - of set-accessor die u probeert te overschrijven.
Als u de eigenschap basisklasse niet wilt overschrijven, kunt u het nieuwe trefwoord voor de eigenschap in afgeleide klasse gebruiken.
Zie Eigenschappen gebruiken voor meer informatie.
In het volgende voorbeeld wordt CS0546 gegenereerd omdat de basisklasse geen set accessor declareert voor de eigenschap.
// CS0546.cs
// compile with: /target:library
public class a
{
public virtual int i
{
get
{
return 0;
}
}
public virtual int i2
{
get
{
return 0;
}
set {}
}
}
public class b : a
{
public override int i
{
set {} // CS0546 error no set
}
public override int i2
{
set {} // OK
}
}
.NET-feedback
.NET is een open source project. Selecteer een koppeling om feedback te geven: