Probleme mit struct
-
@Seezer sagte in Probleme mit struct:
Ich habe die Grundstruktur aus dem Lehrbuch genommen
Besteht die Chance, das Lehrbuch zu wechseln oder ist das von deinem Kurs fest vorgeschrieben?
-
Vielleicht auch mal ein weiterer Hinweis:
Wenn du 50 Elemente in einem Array hast, dann haben diese die Indizes 0 bis 49. Du darfst NICHT auf das Element mit Index 50 zugreifen. Also ist alles, was wiestorage[50].tulbNr
oder ähnlich aussieht, falsch. Das 50. Element existiert nicht.if (menu == 1) tulb lagern(); if (menu == 2) tulb ansehenSolo(); if (menu == 3) tulb aendern(); if (menu == 4) tulb ansehenAlle(); if (menu == 5) tulb auslagern();
Wo kommt hier jeweils das "tulb" her und was soll das bedeuten?
-
Das wurde wohl nur geschrieben, damit es (irgendwie) kompiliert...
@Seezer weiß aber wohl nicht, was das bedeutet und wie ein Funktionsaufruf richtig aussehen muß?!
-
Fast allen von Deinen Funktionen fehlt der Rückgabetyp.
-
@Seezer sagte in Probleme mit struct:
Also derartiger Quellcode ist in modernem C++ sehr unüblich:tulb storage[]
Die Schulung scheint auf einem etwas älteren Stand zu sein.
Vermutlich würde man das eher so machen:
void aendern( std::vector<tulb> &mystorage ) { // change something }
oder noch besser, um nicht den ganzen Storage zu übergeben, wenn man nur ein einzelnes "tulb" braucht:
void einzelnes_tulb_aendern( tulb &my_tulb ) { } // aufruf: std::vector<tubl> Storage; auto iter_tulb_to_be_changed = findTulb( Storage, some_parameter ); if ( iter_tulb_to_be_changed != Storage.end() ) einzelnes_tulb_aendern( *iter_tulb_to_be_changed );
-
@daddy_felix Leider nicht . Werde mir aber noch ein zusätzliches Buch über C++ besorgen.
-
@It0101 Moin - mir fehlt eindeutig die Erfahrung um zu beurteilen ob die Schulung auf einem Aktuellen oder eher
Älteren Stand der Dinge ist.std::vector darf für diese Übung nicht verwendet werden aber es bring mich auf eine Idee.
Danke für den Input soweit
-
Dein Code sieht so aus, hätte dein Lehrer vor über 20 Jahren C programmieren gelernt und danach nur noch ein klein wenig C++ angeschaut.
Dinge wie Klassen, typedef struct oder Datentypen ala bool fehlen komplett. Daher kommen auch die 20 Jahre. Mit dem C Standard C99, welcher 1999 kam, wurde der bool Datentyp eingeführt.
Ich fürchte deine Schulung ist ein als C++ kaschierter 20 Jahre alter C Kurs.
-
@Seezer sagte in Probleme mit struct:
@daddy_felix Leider nicht . Werde mir aber noch ein zusätzliches Buch über C++ besorgen.
Dann lass dich dahingehend gut beraten hier (bzw. kram einen der Threads raus, die Frage wurde hier bestimmt schon zig mal gestellt). Es gibt verschiedene Meinungen, welches das beste C++ Buch ist, aber zumindest eine relativ klare Einigung welche Bücher man in Betracht ziehen könnte und welche man am besten direkt wegschmeißt.
Meine Empfehlung wäre an dieser Stelle "Der C++ Programmier" vom Breymann.
Schlechte Bücher überwiegen nämlich leider die Anzahl an guten Büchern.
-
@Leon0402 sagte in Probleme mit struct:
Meine Empfehlung wäre an dieser Stelle "Der C++ Programmier" vom Bergmann.
Du meinst Ulrich Breymann, nicht Bergmann.
Ansonsten gibts auch noch den C++ Primer von Lippman.Beide Bücher sind empfehlenswert.