Suchergebnisse

Suchergebnisse 1-14 von insgesamt 14.

  • Benutzer-Avatarbild

    Hallo, ich arbeite gerade an einer Klassenbibliothek für eine abgespeckte Zeiterfassung. Abgespeckt deshalb, weil hier nur Zeiten erfasst werden sollen, damit unsere AT-Mitarbeiter eine Übersicht für sich selbst haben, da sie ja nicht über unser Zeiterfassungssystem laufen. Nun möchte ich aber die Bibliothek ein wenig universell gestalten, falls künftig doch mehr daraus werden soll. Jetzt ist es so, das unsere bestehenden Mitarbeiter ja eine Personalnummer haben, da diese vom Lohnbüro erstellt w…

  • Benutzer-Avatarbild

    Hi @thefiloe Danke für den Hinweis. (Wald,Bäume) C#-Quellcode (9 Zeilen) so sieht es auch deutlich besser aus, danke Dir EDIT: Sorry, gerade erst den Post von Dir gesehen @~blaze~ Hab leider nicht alles verstanden was Du meinst. Wenn ich einen neuen Mitarbeiter erstelle, und gebe keine persnummer mit, dann wird doch der Wert aus _nextFreeStaffnumer an _staffNumber übergeben und dann um 1 hochgezählt.... oder nicht? Ich werd mir mal ne Konsole in das Projekt hinzufügen zum testen EDIT2: muss auch…

  • Benutzer-Avatarbild

    Hallo @~blaze~ hatte meinen Beitrag oben editiert. Nu bin ich ganz verwirrt. Ich leite ja von Person ab und rufe diesen Konstruktor mit auf um Namen usw. zu übergeben. this würde sich doch dann auf die Klasse Employee beziehen und nicht auf Person, oder?

  • Benutzer-Avatarbild

    Hallo @~blaze~ Interlocked hab ich mir angeschaut, aber nicht wirklich verstanden.. Das mit dem Konstruktor in der Klasse aufrufen mit this() habe ich probiert, aber hat nicht funktioniert. Ich verstehe auch nicht ganz was Du damit meinst. Wenn ein Mitarbeiter erstellt wird, wird ja der Basis Konstruktor aufgerufen um die Properties der Basisklasse zu belegen damit die Kindklasse Zugriff darauf hat, also vorname, nachname und titel. So steht es jedenfalls in meinem C# Buch...

  • Benutzer-Avatarbild

    Hallo @RodFromGermany das wird jetzt kompliziert. C#-Quellcode (17 Zeilen) So ganz verstehe ich es noch nicht. Ich habe ja 2 Konstruktoren in der Kindklasse. Wenn ich jetzt nur den 2. Aufrufe, kann ich ja die Properties der Basisklasse nicht setzen... Wenn ich beim 2. Konstruktor nochmal this() dahinter schreibe, meckert der Compiler EDIT: Hier noch die Mutterklasse: (Versteckter Text)

  • Benutzer-Avatarbild

    Irgendwie werd ich das Gefühl nicht los, das this() immer die eigenen Konstruktoren aufruft, also die, der Kindklasse. Aber irgendwo muss ich doch den Konstruktor der Basis aufrufen??? C#-Quellcode (11 Zeilen) EDIT: warte, ich glaub langsam steig ich dahinter was Du meinst @RodFromGermany.... hab jetzt: C#-Quellcode (10 Zeilen) Bin mir aber noch unsicher mit dem Defaultwert.... Also der 2. Konstruktor ruft den ersten auf und setzt dabei staffnumber auf die nächste freie... aber ist das nicht fal…

  • Benutzer-Avatarbild

    OK, hab ich ja fast in meinem Edit auch....ABER.... Sagen wir ich rufe in deinem Beispiel den 2. Konstruktor auf und gebe 12345 als staffnumber mit.... dann wird doch 12345 garnicht als staffnumber abgelegt, sondern _staffnumber wird mit _nextFreeStuffnumber überschrieben.... Müsste es nicht daher andersherum sein? (so wie in meinem Edit oben?) Vielleicht nochmal als Erklärung: Also wenn ich einen Mitarbeiter erstellen möchte, der bereits eine StaffNumber hat (12345) dann soll diese ja in _staff…

  • Benutzer-Avatarbild

    Au mann klar.... ich hab deine eingebaute C&P Bremse falsch verstanden.... So macht es sinn.... Frage ist nur, warum steht das in keinem Buch so drinne??? oder les ich die falschen? Im Moment hab ich "Andreas Kühnel - C#6 mit Visual Studio 2015" EDIT: noch ne andere Frage... OK, 2.... 1. ist der Code meiner Klassen denn dann so OK oder hab ich da noch grobe Schnitzer drinn? 2. wenn ich die _staffnumber nun speichern will, soll ich das dem Anwender überlassen oder sollte man das bereits in die Kl…

  • Benutzer-Avatarbild

    Danke Dir @RodFromGermany jetzt kann ich meine anderen Projekte nochmal durchlaufen und dort die Konstruktoren umbauen... Ich schaue mal nach dem von Dir angesprochenen Buch... @RodFromGermany warte, ich glaub ich hab doch noch nen Fehler: C#-Quellcode (8 Zeilen) Wenn ich jetzt den 1. Konstruktor 12 mal aufrufe und jedesmal ne Staffnumber mitgebe, dann wird _nextfreestaffnumber ja auch jedesmal hochgezählt... Ist es nicht so richtig? C#-Quellcode (8 Zeilen)

  • Benutzer-Avatarbild

    Die Variable _nextFreeStaffnumber soll halt immer die nächste Freie Personalnummer beinhalten, die dann der _staffNumber zugewiesen wird. Also wenn ich 5 Mitarbeiter erstelle und keine StaffNumber mitgebe: 1. M hat dann Staffnumber 0 2. M bekommt dann Staffnumber 1 usw. 5. M hat dann StaffNumber 4 und die nächste frei wird auf 5 gestzt. Jetzt erstelle ich nen neuen Mitarbeiter, gebe ihm die StaffNumber 12 mit (_nextFreeStaffNumber sollte aber immernoch 5 sein). Erstelle ich dann wieder nen neuen…

  • Benutzer-Avatarbild

    @RodFromGermany meinst Du so? C#-Quellcode (13 Zeilen) Wie rufe ich denn diese ab BEVOR der Konstruktor aufgerufen wird???

  • Benutzer-Avatarbild

    @RodFromGermany wenn alle jemals benutzten abgeprüft werden sollten (macht ja auch sinn) dann pack ich die Nummern besser zusätzlich in eine List(of int), bzw. Wandel die int Variable in ne List(of int) um, dann könnte ich die 1. besser abspeichern und 2. alle nummern in einer For oder foreach schleife prüfen...

  • Benutzer-Avatarbild

    @ErfinderDesRades deswegen sprach @~blaze~ vermutlich auch von Interlocked, wo ich aber die Verwendung nicht so recht verstehe. ich kann nachher mal die Klasse mit ner Konsolenanwendung bauen und hoch laden... im Moment reis ich Tapeten ab... EDIT: wobei ich mir gerade denke, das ich wohl eher die staffnumber als Parameter mache, der in jedem Fall gesetzt werden muss, dann muss sich eben der Anwender darum kümmern da was sinnvolles zu übergeben.

  • Benutzer-Avatarbild

    @RodFromGermany ja, so werd ich es auch machen, ich wollte es halt für unsere ATler machen, die haben ja bereits eine Nummer, aber dann regel ich da bei denen über den Namen... wird ja denn eh von jedem selbst benutzt und läuft nicht auf irgendeinem server...