"struct" Element löschen
-
Hey,
erneut eine Frage:
Ich habe ein struct:
struct artikel { int artNum; char artName[25]; char artSize[3]; double artPrice; };Und folgende Artikel eingebaut:
artikel jacke; jacke.artNum = 1; strcpy_s(jacke.artName, "Jacke"); strcpy_s(jacke.artSize, "XL"); jacke.artPrice = 17.99; artikel schuhe; schuhe.artNum = 2; strcpy_s(schuhe.artName, "Schuhe"); strcpy_s(schuhe.artSize, "M"); schuhe.artPrice = 25.99; artikel hose; hose.artNum = 3; strcpy_s(hose.artName, "Hose"); strcpy_s(hose.artSize, "M"); hose.artPrice = 21.99; artikel pullover; pullover.artNum = 4; strcpy_s(pullover.artName, "Rollkragenpullover"); strcpy_s(pullover.artSize, "L"); pullover.artPrice = 15.99;Meine Frage:
Wie kann ich jetzt beispielsweise artikel hose; komplett löschen?
-
Indem du den aktuellen Scope verlässt.
Irgendwie habe ich nicht das Gefühl, dass du diese Antwort suchst (obwohl technisch korrekt), leider verrätst du nicht was das ganze werden soll.
Ich kann dir aber schon einmal auf andere Weise helfen: Hör sofort mit dem C Kurs auf den du gerade machst. Er taugt nichts und wird dir mehr schaden als nützen.
-
Wir hatten dir schon in deinem anderen Thread ans Herz gelegt, erst einmal de Grundlagen zu lernen sprich ein anständiges C++ Grundlagenbuch zu lesen.
Falls du gerade eins deiner Bucher ließt sind diese für C++ Schrott
Lg freeG
-
fr33g schrieb:
Falls du gerade eins deiner Bucher ließt sind diese für C++ Schrott

Und wieso genau? Bzw. kannst du eines empfehlen?
PS.: Ich mache keinen C Kurs O.o
-
basi schrieb:
Und wieso genau?
Weil dein Code darauf hindeutet, dass du kein C++ gelernt hast, sondern C, eine komplett andere Sprache. Ein C++-Buch, dass einem C beibringt taugt daher logischerweise nichts.
Bzw. kannst du eines empfehlen?
Eigentlich haben die Bücher die du im anderen Thread genannt hast einen ganz guten Ruf. Anscheinend steckt da wohl doch nicht viel hinter.
PS.: Ich mache keinen C Kurs O.o
Ich meinte damit allgemein Kurs, Buch, Tutorial. Wo immer du den obigen Programmierstil her hast.
-
Naja ich mache das halt seit gestern Nachmittag, da kann da noch kein perfekter Programmierstil auf C++ optimiert dahinter stecken, zumal ich vorher viel mit PHP gemacht habe, da habe ich mir halt sowas angewöhnt.
Weiß ich also nicht genau was du mit "Programmierstil" genau meinst.
Im Buch steht übrigens vorne drin das das auch für C Programmierer geeignet ist die auf C++ umsteigen wollen.
-
Es geht nicht um den perfekten Programmierstil für C++ sondern um so grundlegende Sachen dass man in C++ std::string nimmt anstatt char Arrays, dass man mit Klassen und Abstraktion bzw generell OOP programmiert.
Und dein Codebeispiel zeigt genau das Gegenteil:Es werden structs verwendet wo alle Member public sind und es wird direkt drauf zu gegriffen...
Es werden char Arrays genutzt mit den dazu passenden Funktionen aus der C-Standard-Bibliothek.
Daraus schließe ich einfach mal, dass dein Buch so ein typische C/C++ Buch ist, was gar nicht gut ist um C++ zu lernen.
Lg freeG
PS: Empfehlen kann ich dir den C++ Primer oder Die C++ Programmiersprache.
-
Du meinst dieses hier?
-
fr33g schrieb:
Es werden structs verwendet wo alle Member public sind und es wird direkt drauf zu gegriffen...
Es werden char Arrays genutzt mit den dazu passenden Funktionen aus der C-Standard-Bibliothek.
Daraus schließe ich einfach mal, dass dein Buch so ein typische C/C++ Buch ist, was gar nicht gut ist um C++ zu lernen.
Lg freeG
Unter manchen Umständen ist es mMn in Ordnung, die OOP Paradigmen absichtlich zu verletzen. Wenn ich Datenobjekte habe, die eigentlich nur dazu da sind, um zusammenhängende Daten zu transportieren ist die Implementation als struct akzeptabel.
-
DocShoe schrieb:
fr33g schrieb:
Es werden structs verwendet wo alle Member public sind und es wird direkt drauf zu gegriffen...
Es werden char Arrays genutzt mit den dazu passenden Funktionen aus der C-Standard-Bibliothek.
Daraus schließe ich einfach mal, dass dein Buch so ein typische C/C++ Buch ist, was gar nicht gut ist um C++ zu lernen.
Lg freeG
Unter manchen Umständen ist es mMn in Ordnung, die OOP Paradigmen absichtlich zu verletzen. Wenn ich Datenobjekte habe, die eigentlich nur dazu da sind, um zusammenhängende Daten zu transportieren ist die Implementation als struct akzeptabel.
Geb ich dir auch Recht, wenn ich mir zum Beispiel ne einfach Struct mache alls Zusammenfassung von Daten für die Rückgabe einer Funktion.
Aber ich bin von ausgegangen, dass er das so aus dem Buch übernommen hat mit den structs und so und wenn das Buch schon früh mit solchen Dingen anfängt, geh ich einfach mal von aus dass es dieses Design durchgehen benutzt und daher nicht für C++ geeignet ist, sondern so ein typisches C/C++ Buch ist.
Lg freeG
-
SeppJ schrieb:
Weil dein Code darauf hindeutet, dass du kein C++ gelernt hast, sondern C, eine komplett andere Sprache.
"Ein C Programm ist ein C++ Programm, wenn auch kein gutes!"
