no suitable method found to override
とエラーとしてマークされている理由は、私は疑問に思って
(.NET 4):私はthisを見つけたデフォルトパラメータとオーバーライド
public override string ToString(int foo=0) {
// some stuff
}
多少似ているようだ(少なくともも驚くべき行動オプションのパラメータを使用して)、このメソッドがToString()
をオーバーライドしない理由がわかりません。
は今、私は明らかに簡単にToStringメソッドをオーバーロードすることでこの問題を解決するかどうかは承知しているので、私は問題の解決に興味を持って、しかし、この制限の根拠ではありませんよ。
しかし、それには何らかの理由がありますか?私は、想定されているC#+は簡単に何も壊さずにそのルールを変更できることを意味します。だから、それは単に「このように簡単です」か、それとも本当に問題になるコーナーケースですか? – Voo
@Voo:私はコーナーケースを考えることはできませんが、大幅に変更することなく 'callvirt'(特定のメソッドシグネチャが必要です)が破損する可能性があります。だから... "このように簡単です"と私は思います。しかし、正当な理由があります。 – Ryan