If (zeiger != NULL) funktioniert nicht?
-
Hey,
ich bin's schon wieder.

Ich sehe noch nicht richtig in C++ durch.
Was ist daran falsch:struct ple { int inhalt; ple* zeiger; }; ple* anker; ... void anzeigen(ple ankerin) { if (ankerin != NULL) { // error C2678: Binärer Operator '!=': Es konnte kein Operator gefunden werden ...Dieser Operator gibt es doch in C++ als "nicht gleich"

in Delphi geht das doch so:if ankerin <> nil then
Was ist denn bloß daran flasch?
und hat einer ein gutes Tutorial über Pointer in C++ für mich?MfG
Chefx
-
In dem Kontext ist ankerin kein Zeiger sondern eine Instanz von ple.
Mach mal in der Paramterliste ple *ankerin statt ple ankerin.
-
Und initialisier deine Zeiger brav mit 0, sonst werden die mit nem Defaultwert != 0 initialisiert, und dann ist die Überprüfung wieder für die Katz

-
Für Zeiger siehe ein gutes Einsteigerbuch:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-251551.html
-
cool danke an euch

MfG
Chefx
-
Du könntest auch eine Referenz übergeben, dann ist zumindest ziemlich sicher dass du ein gültiges Objekt erhälst.
void anzeigen(ple& ankerin)bzw const, falls das Objekt nicht verändert wird
void anzeigen(const ple& ankerin)
-
Chefx schrieb:
Was ist daran falsch:
struct ple { int inhalt; ple* zeiger; };Der Name des Structs ist schlecht gewählt. Du brauchst wohl auch eine Weile, Dir die Delphi-ismen (wie Präfix 'P' für Zeigertypen) abzugewöhnen. In Deinem ersten Thread hieß das struct noch "tle".
Chefx schrieb:
void anzeigen(ple ankerin) { if (ankerin != NULL) { // error C2678: Binärer Operator '!=' ...Da hast Du wohl als alter Delphi-Hase p=Zeiger gedacht.
-
drakon schrieb:
Für Zeiger siehe ein gutes Einsteigerbuch:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-251551.html
Pfff, für Zeiger ein ganzes Buch kaufen?
-
DerPfffPfffMann schrieb:
drakon schrieb:
Für Zeiger siehe ein gutes Einsteigerbuch:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-251551.html
Pfff, für Zeiger ein ganzes Buch kaufen?
Ein Einsteiger sollte doch ein Einsteigerbuch haben.. Und wenn nicht, dann sollte er sich eines zutun, weil da noch viel mehr drin steht, als Zeiger.
