Hi,
Ich habe ein Problem mit SDL Listen, diese wollen bei mir einfach nicht funktionieren ich bekomme jedesmal eine Fehlermeldung, wenn ich versuche sie zu benutzen. Ohne die verwendung der SDL Listen im follgenden Codeabschnitt funktioniert das Program es muss also irgendwie mit den Listen zusammenhängen..
Und nochmal die Headerdatei der Klasse:
Als Fehlermeldung wird mir follgende Angezeigt:
Ich würde mich über Hilfe freuen
Ich habe ein Problem mit SDL Listen, diese wollen bei mir einfach nicht funktionieren ich bekomme jedesmal eine Fehlermeldung, wenn ich versuche sie zu benutzen. Ohne die verwendung der SDL Listen im follgenden Codeabschnitt funktioniert das Program es muss also irgendwie mit den Listen zusammenhängen..
Code:
void CGame::AreaAbfragen () { list<CAreaScanning>::iterator iter_Area; //Abrage ob grade gesprungen wird if (m_Player.StatusRueckgabe() != 3) { //Wenn nein Schleifenabfrage nach Boden oder Fallen beginnen for (iter_Area = m_lArea.begin (); iter_Area != m_lArea.end(); ++iter_Area ) { //Abfrage nach Boden if (iter_Area->Abfrage_Oben(m_Player) == true) { //Wenn boden gefunden wurde Boden kontakt bestätigen und Schleife sofort bennden m_bContact = true; break; } //Wenn kein Boden gefunden wurde dann fällt der Spieler else { m_bContact = false; } } } //Abfrage ob Spung an ist else if (m_Player.StatusRueckgabe() == 3) { //Wenn ja SChleife durchlaufen die nach Kontakt mit Objekt über Spieler sucht for (iter_Area = m_lArea.begin (); iter_Area != m_lArea.end(); ++ iter_Area ) { iter_Area->Abfrage_Unten(m_Player); } //Kein BOdenkontakt m_bContact = false; } //Abfrage ob Sprung "nicht" an ist if(m_Player.StatusRueckgabe() != 3) { //Wenn ja -> Abfrage ob Bodenkontakt da ist oder nicht if (m_bContact == true) { //Boden wurde gefunden also Laufen an m_Player.StatusAnpassen(1); } else { //kein Boden wurde gefunden also Fallen an m_Player.StatusAnpassen(2); } } //Abfrage ob grade eine BEwegung nach Links geamcht wird if (m_Player.MoveDirectionRueckgabe() == 1) { //Wenn ja Abfrage ob nicht Links irgendwo eine Kollison mit einem Objekt ist for (iter_Area = m_lArea.begin (); iter_Area != m_lArea.end(); ++ iter_Area ) { iter_Area->Abfrage_Links(m_Player); } } //Abfrage ob grade eine BEwegung nach Rechts geamcht wird if (m_Player.MoveDirectionRueckgabe() == 2) { for (iter_Area = m_lArea.begin (); iter_Area != m_lArea.end(); ++ iter_Area ) { //Wenn ja Abfrage ob nicht Rechts irgendwo eine Kollison mit einem Objekt ist iter_Area->Abfrage_Rechts(m_Player); } } }
Code:
#ifndef Game_HPP #define Game_HPP #include <list> #include "framework.h" #include "Player.h" #include "Enemy.h" #include "Level.h" #include "AreaScanning.h" #include "Backgroundmap.h" class CGame { public: CGame(); //Hauptfunktionen des Spiels void Run (); void Exit (); //Unterfunktionen von Run void Testlevel(); //Funktionen für Level void AreaAbfragen (); private: //Instanzen CPlayer m_Player; //Für Spieler CBackgroundmap *m_Backgroundmap; //Listen list<CEnemy> m_EnemyList; //Liste für Gegner list<CAreaScanning> m_lArea; //Liste für Gegner //Variablen bool m_bContact; //Speichert ob Spielerbodenkontakt hat bool m_bListe; //Speichert ob Liste schon gefüllt wurde.. }; #endif
Code:
1>------ Erstellen gestartet: Projekt: Super_Engine_01, Konfiguration: Debug Win32 ------ 1>Kompilieren... 1>Game.cpp 1>Kompilieren... 1>main.cpp 1>Verknüpfen... 1>Game.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW" in Funktion ""public: class std::list<class CAreaScanning,class std::allocator<class CAreaScanning> >::_Const_iterator<1> & __thiscall std::list<class CAreaScanning,class std::allocator<class CAreaScanning> >::_Const_iterator<1>::operator++(void)" (??E?$_Const_iterator@$00@?$list@VCAreaScanning@@V?$allocator@VCAreaScanning@@@std@@@std@@QAEAAV012@XZ)". 1>.\Debug/Super_Engine_01.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise. 1>Das Buildprotokoll wurde unter "file://c:\Program Files\Super Mario Engine\Super_Engine_11\Debug\BuildLog.htm" gespeichert. 1>Super_Engine_01 - 2 Fehler, 0 Warnung(en) ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========