J
Hallo,
vorweg erstmal: Standard-C++ kennt weder Textfelder noch Formulare. Du verwendest wohl irgendeine Bibliothek für die Oberfläche.
In diesem Fall ist es ja so, daß Du praktisch ein Textfeld löschen willst.
Löschen ist ein Verb, das heißt man kann es ausführen, also ist es wohl eine Funktion und keine Klasse.
In diesem Fall würde ich sagen machst Du das am geschicktesten direkt über das Steuerelement. Du willst ja genau an diesem Steuerelement etwas tun, und der direkteste Weg das auszudrücken ist indem Du eine Funktion dieses Steuerelements aufrufst.
Wenn Du Probleme hast, was Klasse und was Funktion sein sollte, dann ist es oftmals sinnvoll, sich kurz hinzusetzen und mal die Funktionaalität zu beschreiben. Und zwar richtig aufschreiben, daß man es als Text vor sich hat. Dann suchste Dir den Text nach Nomen und Verben ab. Die Nomen sind Kandidaten für Klasse, die Verben für Funktionen.
Das ist ein kleines Hilfsmittel. Allerdings gibt es wie immer Ausnahmen und gerade hier sehr viele. Nicht alle Nomen sind auch wirklich Klassen, bei den Funktionen ist es ebenso, trotzdem könnte Dir das als Anhaltspunkt dienen. Gerade für relativ unkomplexe Probleme trifft die Methode ziemlich zuverlässig.
Dennoch sollte man sich gut überlegen, ob die Kandidaten auch wirklich zur Klasse werden.
Wenn ich zum Beispiel ein Rollenspiel programmiere und da kommt irgendwelches Geld vor. In diesem Spiel gibt es aber nur eine Sort Geld, nämlich Goldstücke, dann macht unter Umständen keinen Sinn eine extra Geldklasse zu schreiben, weil der Charakter genauso gut einen "int Gold" haben könnte.
Wenn es aber zum Beispiel verschiedene Währungen gibt, dann wäre es sinnvoll verschiedene Geldklassen zu bauen, die man dann auch ineinander umwandeln (sprich: Geld wechseln) kann.
Grundsätzlich würde ich sagen achte immer darauf, nichts komplizierter zu machen als es ist. Wenn Du eine Aufgabe durch einen Methodenaufruf erledigen kannst, dann solltest Du das in 99,9% aller Fälle auch tun, anstatt Dich mit Mehraufwand zu belasten. Bedenke: Der kürzere Code ist wahrscheinlich schneller, besser zu warten, leichter zu verstehen und man baut nicht so leicht Fehler rein.
Du merkst schon, ich schreibe nie was von 100% und das ist immer so. Es gibt keine Regeln, die man nur einhalten muß und schon ist alles richtig. Es gibt massig Ausnahmen, wo ein anderes Vorgehen doch geschickter ist. Letztlich ist es Erfahrungssache. Daher benutze das obene genannte Verfahren als Hilfsmittel, nicht als Maschine, wo man oben nen Text reinfüllt und unten kommen die Klassen und Funktionen raus. Im Zweifelsfall einfach im Forum fragen.
MfG Jester