Hallo,
Zitat: |
Problem gelöst ;D unendliche Schleife in pauserechner |
Steht dort noch die falsche Version, oder hast Du den Quellcode berichtigt?
Noch ein paar Vorschläge, die eher unter "Schönheitsreparatur" fallen und als Anregungen für die künftige Arbeit gedacht sind:
Für Bezeichner schau einmal unter
NET: Richtlinien für Namen nach. Ergänzend empfehle ich, nur
englische Bezeichner zu verwenden: Eigentlich bin ich ein Befürworter der deutschen Sprache in Deutschland. Aber das Denglisch, das der Designer bei einem EventHandler mit MitarbeiternameTextChanged erzeugt, empfinde ich als noch viel grausamer; dann lieber gleich richtiges Englisch.
"Überflüssige" Variablen sollten vermieden werden. Vor allem bei Strings ist damit oft ein Umspeichern von Werten verbunden; ob der Compiler das bei der Optimierung bereinigt, kann man nicht immer wissen. Beispiel:
C#-Quelltext
1: 2: 3: 4: 5:
| string ergs = Convert.ToString(erg); return (ergs); return erg.ToString(); |
ergs ist überflüssig;
ToString gibt es bei jeder Klasse, und es kann auf jedes Objekt angewandt werden.
Auch die Minuten als Zwischenwerte sind überflüssig:
C#-Quelltext
1:
| int res = (endestd * 60 + endemin) - (beginnstd * 60 + beginnmin); |
Klammern zwischen dem Gleichheitszeichen und dem Semikolon finde ich ebenfalls seltsam.
Etwas grundsätzlicher ist die ständig nötige Verwendung von
Convert. Abgesehen davon, dass ich sowieso
Parse usw. vorziehe (wie ich schon sagte), solltest Du überall dort, wo ein
bestimmter Typ benutzt und als solcher (!) verarbeitet werden soll, diesen Typ verwenden und nicht ersatzweise einen String. pause sollte als
TimeSpan-Array deklariert werden (wenn ich es richtig interpretiere). Für das Stundenarray passt besser eine
eigene Klasse, in der alle Zeiten auch als solche deklariert und direkt benutzt werden. Für alle Auswertungen können direkt die DateTime-Methoden verwendet werden; das macht alles einfacher und übersichtlicher.
Viel Erfolg! Jürgen