| Autor |
Nachricht |
314159265358979
Mitglied
Benutzerprofil
Anmeldungsdatum: 09.03.2010
Beiträge: 4658
|
314159265358979 Mitglied
19:33:01 28.10.2011 Titel: |
|
Zitieren |
| Zitat: | [19:23:42] <Paprikachu> ich geb dir n tipp: struct node { node* prev; node* next; T data; };
[19:23:53] <Hacker> aja
[19:23:55] <Hacker> genau
[19:24:02] <Hacker> ok, mach mich dran es zu lernen
[19:24:51] <Hacker> sag mal, machts da sinn den struct alsn typedef zu machen?`
[19:25:02] <Paprikachu> nö
[19:25:04] <Paprikachu> wozu
[19:25:10] <Hacker> kp
[19:25:18] <Paprikachu> das macht man nur in C
[19:25:27] <Hacker> ???
[19:25:35] <Hacker> wie dass? gibt kein typedef in C
[19:25:39] <Paprikachu> türlich
[19:25:48] <Hacker> ??????
[19:25:49] <Paprikachu> typedef struct {} foo;
[19:25:56] <Hacker> ????????????
[19:26:01] <Hacker> seit wann?
[19:26:12] <Paprikachu> immer schon
[19:26:16] <Hacker> in c++ von a bis z steht, soweit ich mich erinner was anderes |
Sorry Hacker, ich kann nicht anders =( |
|
|
|
 |
Hacker_ausgeloggt
Unregistrierter
|
Hacker_ausgeloggt Unregistrierter
19:36:30 28.10.2011 Titel: |
|
Zitieren |
kp. Hab nachgeguckt, steht nicht so da, hab ich aber so verstanden |
|
|
|
 |
volkard
Moderator
Benutzerprofil
Anmeldungsdatum: 06.04.2000
Beiträge: 25649
|
volkard Moderator
19:45:50 28.10.2011 Titel: |
|
Zitieren |
Dickes LOL.
Zur Erklärung:
In C gilt (galt? Bin nicht auf dem neuesten C-Stand, sorry. Hatten die das nicht auch angepaßt?), daß man schreibt
| C++: | | struct Node{Node* prev; Node* pred; double data;}; | |
und man verwendet es mit
Man kann (konnte?) nicht schreiben
Aber mit typedef kann man das dann doch hinkriegen.
Erstmal plump:
| C++: | struct Node{Node* prev; Node* pred; double data;};
typedef struct Node NodeType; | |
und jetzt geht weiterhin natürlich
aber auch das praktische
Ok, und dann hat man sich angewöhnt, es so zu machen:
| C++: | struct Node_tag{Node* prev; Node* pred; double data;};
typedef struct Node_tag Node; | |
nebst
Und später sogar
| C++: | | typedef struct {Node* prev; Node* pred; double data;} Node; | |
nebst
Das war in C++ aber nie ein Thema.
In C++ war schon immer, daß man mit struct oder class Typen baut, die sich sozusagen wie int anfühlen.
| C++: | | struct Node{Node* prev; Node* pred; double data;}; | |
nebst
Falls C++ von A-Z da einen typedef echt reingehauen hat, war das ein Versehen, weil er den Code von C gecopypastet hat und nicht nach C++ umgestellt. Kann ich aber kaum glauben. So panne ist auch Jürgen Wolf nicht. |
_________________ ewr-dienstleister krankenversicherung
Zuletzt bearbeitet von volkard am 19:51:14 28.10.2011, insgesamt 5-mal bearbeitet |
|
 |
Jonas OSDever
Mitglied
Benutzerprofil
Anmeldungsdatum: 26.08.2010
Beiträge: 694
|
Jonas OSDever Mitglied
21:03:46 28.10.2011 Titel: |
|
Zitieren |
| volkard schrieb: | | So panne ist auch Jürgen Wolf nicht. |
Oh, Schei..., dann bin ich ja panne. Ich hab nähmlich auch in C++ die Angewohntheit
| C++: | typedef struct tagFoo
{
int bar;
char foobar;
double barfoo;
} Foo; | |
zu schreiben.
Ach ja zum Thema JW (hab den Thread jetzt erst entdeckt): Ich persönlich habe noch nie ein JW-Buch in der Hand gehabt, find sie aber, nach dem was ich hier im Forum gelesen hab, ganz gut. Jediglich der Titel passt nicht. Müsste eher heißen: "C++ - wie man es nicht machen sollte". |
_________________ Hier koennte eine Signatur stehen
|
|
 |
C-Expert
Unregistrierter
|
C-Expert Unregistrierter
22:56:45 28.10.2011 Titel: |
|
Zitieren |
Volkard was du an C Code schreibst ist falsch. Einfach mal was wildes zusammen schreiben ist genau so schlimm wie der Herr Wolf. Vor allem weil du deine Snippets einfach kurz mit deinem Compiler hättest testen können, z.B. gcc -c -std=c89.
Man muss in der Definition des structs schon einen gültigen Bezeichner aus dem "tag space" verwenden, in den meisten deiner Fälle ist das "struct Node" statt "Node".
Übrigens ist | Code: | | typedef Node_tag Node; Node Node; /* <-- Deklaration einer Variablen Node vom Typ Node. */ | | auch legal, aber empfohlen wird, wie in deinem letzten Beispiel ein _tag anzuhängen.
Ansonsten wer wirklich 0.02€ Ahnung von C haben will der kommt um
nicht herum. Da steht alles drin was einen Elektrotechniker von einem C Guru unterscheidet. |
|
|
|
 |
volkard
Moderator
Benutzerprofil
Anmeldungsdatum: 06.04.2000
Beiträge: 25649
|
volkard Moderator
23:20:26 28.10.2011 Titel: |
|
Zitieren |
| Jonas OSDever schrieb: |
Oh, Schei..., dann bin ich ja panne. Ich hab nähmlich auch in C++ die Angewohntheit
| C++: | typedef struct tagFoo
{
int bar;
char foobar;
double barfoo;
} Foo; | |
zu schreiben.
|
Naja, da kann ich Dich beruhigen.
Das ist in C++ ganz sicher nicht mehr nötig. |
_________________ ewr-dienstleister krankenversicherung
|
|
 |
volkard
Moderator
Benutzerprofil
Anmeldungsdatum: 06.04.2000
Beiträge: 25649
|
volkard Moderator
23:26:30 28.10.2011 Titel: |
|
Zitieren |
| C-Expert schrieb: | | Volkard was du an C Code schreibst ist falsch. Einfach mal was wildes zusammen schreiben ist genau so schlimm wie der Herr Wolf. Vor allem weil du deine Snippets einfach kurz mit deinem Compiler hättest testen können, z.B. gcc -c -std=c89. |
Kindchen, ich habe persifliert, was Praxis ist. Hast Du an meiner historischen Herleitung was auszusetzen? |
_________________ ewr-dienstleister krankenversicherung
|
|
 |
asddsdsasad
Unregistrierter
|
asddsdsasad Unregistrierter
17:43:15 30.10.2011 Titel: |
|
Zitieren |
Also ich habe "C von A bis Z" gelesen fand es gut und habe mir direkt "C++ von A bis Z" bestellt und bin es auch durchgegangen.
Nach einigen Fragen hier im Forum wurde ich vom volkard nicht besonders freundlich in die Existenzkrise gestürzt.
Am Anfang mag man vieles nicht glauben aber da ich schon über 5 Jahre C++ programmiere und einiges aber bei weitem nicht alles mittlerweile selbst einschätzen kann gruselt es mir was ich da über Jahre hin programmiert habe.
J. Wolfs C oder C++ Bücher haben meiner Software sehr großen Schaden hinzugefügt. Selbst heute muss ich vieles im alten Code verändern/wrappen/abfangen. So wird es euch allen ergehen wenn ihr mit Wolfs Büchern anfängt und irgendwann richtig programmieren lernt.
Ich glaube dass ich das nächste mal beim erlernen einer neuer Sprache viel vorsichtiger sein und mich nicht auf die Amazon Rezensionen von Leihen verlassen werde.
Mein Dank an Diejenigen die mich permanent angeflamed und manchmal zur Verzweiflung gebracht haben: volkard,krümmelkacker,seppj,...
Es könnte zwar ein wenig freundlicher gehen aber es hat geholfen. |
|
|
|
 |
Heiland
Unregistrierter
|
Heiland Unregistrierter
15:42:00 31.10.2011 Titel: |
|
Zitieren |
| asddsdsasad schrieb: | | Es könnte zwar ein wenig freundlicher gehen aber es hat geholfen |
Und das soll es doch auch, Jungchen. Alles ist heile (◕‿◕) |
|
|
|
 |
landei
Unregistrierter
|
landei Unregistrierter
16:36:06 31.10.2011 Titel: |
|
Zitieren |
Ihr treibt JW in Hartz 4 wenn ihr so weiter macht |
|
|
|
 |
|
Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben. Sie können auf Beiträge in diesem Forum antworten. Sie können Ihre Beiträge in diesem Forum nicht bearbeiten. Sie können Ihre Beiträge in diesem Forum nicht löschen. Sie können an Umfragen in diesem Forum nicht mitmachen.
|
|
|
|
|