Problem mit SDL Listen "nicht aufgelöste externe Verweise"



  • Hi,

    Ich hab eine Problem mit SDL Listen. Ich bekomme eine Fehlermeldung die ich einfach nicht weg bekomme egal was ich versuche.. Ich weiß nur das der Fehler irgendwie mit den Listen zusammenhängt die ich in diesem Codesegemnt benutze:

    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);
    
    		}
    
    	}
    
    }
    
    #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
    

    Die Fehlermeldung ist:

    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 ==========
    

    Ohne die verwendung der Listen funktioniert das Programm, es muss also irgendwie damit zusammenhängen..



  • Ich hab jetzt die Laufzeitbilblothek verändert auf "Multithreaded-Debug-DLL (/MDd)"

    Damit bekomme ich jetzt eine andere Fehlermeldung:

    1>------ Erstellen gestartet: Projekt: Super_Engine_01, Konfiguration: Debug Win32 ------
    1>Das Manifest wird eingebettet...
    1>mt.exe : general error c101008a: Failed to save the updated manifest to the file ".\Debug\Super_Engine_01.exe.embed.manifest". The parameter is incorrect.
    1>Das Buildprotokoll wurde unter "file://c:\Program Files\Super Mario Engine\Super_Engine_11\Debug\BuildLog.htm" gespeichert.
    1>Super_Engine_01 - 1 Fehler, 0 Warnung(en)
    ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
    

    Kann mir da evtl jemand helfen?


Anmelden zum Antworten