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
C-/C++-Quelltext |
|
1 2 3 4 |
void CPlayerSpielername (std::string Spielername) { m_Spielername = Spielername; } |
C-/C++-Quelltext |
|
1 2 3 4 |
void vSet_Spielername (std::string strSpielername) { m_strSpielername = strSpielername; } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 |
class CPlayer { ... ... public: ... void SetSpielername(std:string spielername) { m_Spielername = spielername;} } } |
C-/C++-Quelltext |
|
1 2 3 4 |
...
CPlayer Palyer;
Player.SetSpielername("Max Mustermann");
...
|
Zitat
1>c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\cplayer.hpp(3) : error C2011: 'CPlayer': 'class' Typneudefinition
1> c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\cplayer.hpp(3): Siehe Deklaration von 'CPlayer'
1>c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\hauptmenü.cpp(25) : error C2079: 'Spieler' verwendet undefiniertes class 'CPlayer'
1>Spielen.cpp
1>c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\cplayer.hpp(3) : error C2011: 'CPlayer': 'class' Typneudefinition
1> c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\cplayer.hpp(3): Siehe Deklaration von 'CPlayer'
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 |
#include "CPlayer.h" void main() { // Variables CPlayer* p = new CPlayer; Spielen( p ); delete p; p = null; } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 |
#include "CPlayer.h" void main() { // Variables CPlayer p = CPlayer(); Spielen( &p ); // hier bin ich mir nicht sicher, musst eventuell noch nachschauen, wie das übergeben als referenz ging ;) } |
Zitat von »"Dofter"«
kann nicht gehn.
Die methode muss in die Klasse(!) also sowas wie:
C-/C++-Quelltext
1 2 3 4 5 6 7 8 9 10 11 class CPlayer { ... ... public: ... void SetSpielername(std:string spielername) { m_Spielername = spielername;} } }
und in der Main dann:
C-/C++-Quelltext
1 2 3 4... CPlayer Palyer; Player.SetSpielername("Max Mustermann"); ...
C-/C++-Quelltext |
|
1 2 3 4 |
void CPlayer::CPlayerSpielername (std::string Spielername) { m_Spielername = Spielername; } |
Anonymous
unregistriert
Zitat von »"Draculark"«
der compiler sagt dir eh schon alles:
ich hebe mal in fett hervor, was für dich wichtig ist:
Zitat
1>c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\cplayer.hpp(3) : error C2011: 'CPlayer': 'class' Typneudefinition
1> c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\cplayer.hpp(3): Siehe Deklaration von 'CPlayer'
1>c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\hauptmenü.cpp(25) : error C2079: 'Spieler' verwendet undefiniertes class 'CPlayer'
1>Spielen.cpp
1>c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\cplayer.hpp(3) : error C2011: 'CPlayer': 'class' Typneudefinition
1> c:\users\luca\documents\visual studio 2008\projects\spielekiste\spielekiste\cplayer.hpp(3): Siehe Deklaration von 'CPlayer'
edit:
is diese player klasse in einer header datei?
wenn ja: du musst dann in jeder source (cpp) datei, wo du zugriff auf diese klassendefinition haben willst, den header inkludieren (also deinen header, wo du die klasse definiert hast), sonst weiß der compiler in dieser sourcedatei natürlich nicht, dass du eine solche klasse bereits definiert hast.
edit2:
und wenn deine spielen funktion einen pointer der klasse CPlayer erwartet, wäre der aufruf wohl ungefähr wie folgt
C-/C++-Quelltext
1 2 3 4 5 6 7 8 9 10 void main() { // Variables CPlayer* p = new CPlayer; Spielen( p ); delete p; p = null; }
Anonymous
unregistriert
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
#include <iostream> #include <windows.h> #include <string> #include <cstdio> #include <time.h> #include <fstream> #include <assert.h> #include "CPlayer.hpp" using namespace std; #pragma comment (lib, "winmm.lib") // Globale Variablen // extern string SpielerSpielername; extern unsigned int SpielerLebensenergie; extern unsigned short SpielerVersuche; extern unsigned int SpielerSpielGeld; extern unsigned int SpielerPunkte; int main () { // Zufallsgenerator initialisieren srand (timeGetTime ()); // Lokale Variablen // unsigned short Auswahl = 0; string SpielerSpielername; unsigned int SpielerLebensenergie; unsigned short SpielerVersuche; unsigned int SpielerSpielGeld; unsigned int SpielerPunkte; // Klassen // CPlayer Spieler; SpielerSpielername = Spieler.Wert_Spielername (); SpielerLebensenergie = Spieler.Wert_Lebensenergie (); SpielerVersuche = Spieler.Wert_Versuche (); SpielerSpielGeld = Spieler.Wert_SpielGeld (); SpielerPunkte = Spieler.Wert_Punkte (); return 0; } |
Quellcode |
|
1 |
int i = 3; |
Anonymous
unregistriert
C-/C++-Quelltext |
|
1 2 |
#include <iostream> int Spielen (class CPlayer &Spieler); |
Zitat von »"Dofter"«
mein stadnt der dinge ist, dass das class aber nicht extra angegeben werden muss... hmm... aber ich kann mich auch täuschen.
Werbeanzeige