Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

30.12.2012, 21:59

Kapitel 12 Problem mit der Codezeile "m_pPlayer->Init (float fXPos, float fYPos)"

Hallo zusammen, ich habe in der Came.cpp (und in allen Dateien) in die Funktion "CPlayer::Init ()"
die Parameter "float fXPos, float fYPos"
Diese Codezeile macht Ärger:

C-/C++-Quelltext

1
m_pPlayer->Init (float fXPos, float fYPos);

Errormeldungen:
error C2144: Syntaxfehler: 'float' sollte auf ')' folgen
error C2660: 'CPlayer::Init': Funktion akzeptiert keine 0 Argumente
error C2059: Syntaxfehler: ')'
Woran liegt das ?( ?
Achso ich brauche die Koordinaten damit ich sie mit denen der asteroiden abgleichen kann.

2

30.12.2012, 22:19

Warum schreibst du beim Aufruf nochmal "float" hin? Der Compiler weiß doch, welchen Typ fXPos hat. (entferne es, und es sollte laufen).
Lieber dumm fragen, als dumm bleiben!

3

30.12.2012, 23:05

Das tut es nicht (error: nichtdeklarierter Bezeichner) da ich der funktion Init ja parameter gegeben habe und ich diese ja beim funktions aufruf brauche... das hat nicht funktioniert

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

4

30.12.2012, 23:19

Kommst du vielleicht aus Japan und liest das Buch ausversehen von Hinten nach Vorn?

Schau dir mal Kapitel 4 an. :rolleyes:
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

5

31.12.2012, 01:16

Das tut es nicht (error: nichtdeklarierter Bezeichner) da ich der funktion Init ja parameter gegeben habe und ich diese ja beim funktions aufruf brauche... das hat nicht funktioniert

Du übergibst mit diesem Aufruf erst die Parameter an die Methode. Ich vermute mal ganz stark das du da was ganz heftig durcheinander bringst.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

6

31.12.2012, 11:38

Kommst du vielleicht aus Japan und liest das Buch ausversehen von Hinten nach Vorn?

Schau dir mal Kapitel 4 an. :rolleyes:
Du weißt, dass unter anderem wegen solchen Aussagen unser Forum gern als unfreundlich und herablassend bezeichnet wird? Das geht auch freundlicher!

@fanto: Jonathan_Klein hat schon recht. Dann hast du noch einen anderen Fehler. Dann kennt er deine Variablen nicht, weil sie nicht deklariert sind. Schau doch nochmal ins Buch ;)

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

7

31.12.2012, 11:57

Das ist ein Fehler, der garnicht passieren kann, wenn man die Kapitel vorher durcharbeitet. Es ist klar zu erkennen, dass er einige Kapitel übersprungen hat um so schnell wie möglich am Spiel herumspielen zu können.
Wenn er dann nen Fehler bekommt und einen Thread in einem Forum eröffnet anstatt selbst zu merken, dass er ausversehen 8 Kapitel übersprungen hat, dann hat er unfreundlichkeit in meinen Augen verdient.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

8

31.12.2012, 12:43

Das ist ein Fehler, der garnicht passieren kann, wenn man die Kapitel vorher durcharbeitet. Es ist klar zu erkennen, dass er einige Kapitel übersprungen hat um so schnell wie möglich am Spiel herumspielen zu können.
Wenn er dann nen Fehler bekommt und einen Thread in einem Forum eröffnet anstatt selbst zu merken, dass er ausversehen 8 Kapitel übersprungen hat, dann hat er unfreundlichkeit in meinen Augen verdient.

Öhm, und wieso hat er es dann verdient? Warst du nie übermütig und hast mal was übersprungen? Du hast zwar recht, dass man das von ganz alleine merkt wenn man das vorherige Kapitel durcharbeitet (was er nun wohl auch tun wird) aber trotzdem geht es freundlicher. Und "er hat es verdient" finde ich sowieso immer ziemlich lächerlich.
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

9

31.12.2012, 13:30

Anhand einer Fehlermeldung zu erkennen wie viel von einem Buch gelesen wurde finde ich schon ziemlich witzig. Gibt ja keine andere Möglichkeit. Vielleicht hat er auch einfach viel Überflogen oder die Übungen nicht richtig gemacht oder hatte immer mal Zeit zwischen den Kapiteln in der er nicht ins Buch geguckt hat. Da gibts ja noch mehr Möglichkeiten;) Und wie oft lese ich hier im Forum, dass jemand das Buch ein zweites oder sogar ein drittes mal gelesen hat, weil eins davon der Fall war. Hier kann man jetzt weiter raten, aber helfen tut das ja niemandem.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

10

31.12.2012, 13:59

Das tut es nicht (error: nichtdeklarierter Bezeichner) da ich der funktion Init ja parameter gegeben habe und ich diese ja beim funktions aufruf brauche... das hat nicht funktioniert

Zeig bitte mal die gesamte Funktion. Dann soltle sich der Fehler relativ leicht beheben lassen.
Lieber dumm fragen, als dumm bleiben!

Werbeanzeige