編譯器錯誤 CS0546
'accessor' : 因為 'property' 沒有可覆寫的 set 存取子,所以無法覆寫
嘗試覆寫屬性的其中一個存取子方法失敗,因為無法覆寫存取子。 此錯誤可能會在下列情況中發生:
如果您不想要覆寫基底類別屬性,則可以在衍生類別中的屬性之前使用 new 關鍵字。
如需詳細資訊,請參閱 Using Properties。
下列範例會產生 CS0546,因為基底類別未宣告屬性的 set 存取子。
// 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
}
}