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 5 6 7 8 9 10 11 12 13 14 15 |
void CGame::Init () { // Joysticks laden InitJoysticks(); // Neuen Spieler initialisieren m_pPlayer = new CPlayer; // Spieler mit Joystick initialisieren, wenn vorhanden list<CJoystick>::iterator It = m_JoystickList.begin (); if(It != m_JoystickList.end()) m_pPlayer->Init(It); // <---- Hier is der Fehler else m_pPlayer->Init (); m_pPlayer->Reset (); ... |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 |
class CPlayer { public: CPlayer(void); void Init (); void Init (CJoystick Joystick); void Quit (); void Render (); void Update (); void Reset (); list <CShot> *GetShotList () { return &m_ShotList; } |
C-/C++-Quelltext |
|
1 |
m_pPlayer->Init(*It); |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Exception: STATUS_ACCESS_VIOLATION at eip=00403991 eax=00000178 ebx=00000000 ecx=00CB6B28 edx=00000000 esi=611021A0 edi=00413D80 ebp=0022CB68 esp=0022CB60 program=C:\Dokumente und Einstellungen\Marc\Eigene Dateien\Programmieren\C++\SDL Game\Debug\SDLGame.exe, pid 5496, thread main cs=001B ds=0023 es=0023 fs=003B gs=0000 ss=0023 Stack trace: Frame Function Args 0022CB68 00403991 (00000000, 43BC0000, 44020000, 00402FAD) 0022CB88 00402EBF (10062538, 00413D80, 0022CC68, 00403F15) 0022CB98 004021A3 (0022CC20, 00000320, 00000258, 00000010) 0022CC68 00403F15 (00000001, 10050168, 10050090, 77DADB0D) 0022CD98 61006198 (00000000, 0022CDD0, 61005510, 0022CDD0) 61005510 61004416 (0000009C, A02404C7, E8611021, FFFFFF48) 2093416 [main] SDLGame 5496 _cygtls::handle_exceptions: Exception: STATUS_ACCESS_VIOLATION 2118052 [main] SDLGame 5496 _cygtls::handle_exceptions: Error while dumping state (probably corrupted stack) |
Zitat von »"Deviloper"«
Copykonstrutkor implemetiert ? (für CJoystick?) Du kopierst da auf jedenfall dein Objekt einmal unnötig ...
C-/C++-Quelltext |
|
1 |
void Init (CJoystick Joystick);
|
C-/C++-Quelltext |
|
1 |
void Init ( const CJoystick& Joystick ); |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 |
/* Kopierkonstruktor */ CJoystick::CJoystick(const CJoystick &rhs) { m_pJoystick = NULL; // <- Kein new, da es sich um ein SDL_Joystick-Struct handelt. Oder ist das falsch? *m_pJoystick = *(rhs.m_pJoystick); // <- Fehler }// Kopierkonstruktor |
C-/C++-Quelltext |
|
1 |
Klasse Objekt = Objekt2;
|
Werbeanzeige