Ich habe eine virtuelle Basismethode void Action()
, die in einer abgeleiteten Klasse überschrieben wird.C# - Vollständige Rückkehr von der Basismethode
Der erste Schritt in Aktion ist base.Action()
aufrufen. Wenn eine Situation in der Basismethode auftritt, möchte ich nicht, dass der Rest der abgeleiteten Methode verarbeitet wird.
Ich möchte wissen, gibt es ein Schlüsselwort oder Design-Muster, mit denen ich die abgeleitete Methode von der Basis-Methode verlassen kann.
Momentan schaue ich mir an, die Lücke zu boolen zu ändern und diese als Flusskontrolle zu verwenden, aber ich habe mich gefragt, ob es noch andere Entwurfsmuster gibt, die ich benutzen könnte.
Nein, es ist keine Fehlersituation, so dass Ausnahmen nicht funktionieren. – Talib
Sorry Gewinn (früherer Eintrag gelöscht, ich brauche keine Lösung), ich brauche immer noch eine Lösung, das System wird ziemlich komplex. Grundsätzlich gibt es eine credits_available Variable woanders im Code. Ich möchte alle Aktionen in der Basisklasse deaktivieren können, wenn keine Credits verfügbar sind. Ich würde gerne in der Lage sein, dies zu tun, ohne dass die abgeleitete Klasse den Code duplizieren muss. – Talib