Fehler lnk2019



  • Hallo zusammen,

    nach langer Zeit hab ich mal wieder angefangen C++ zu programmieren (also seid bitte gnädig 😉 ).

    Ich bekomme den besagten Fehler wenn ich versuche einen Vector an einen ctor zu übergeben. Fehlt da ein bestimmter ctor in der zu übergebenen Klasse?

    Fehlerausgabe:

    error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp___CrtDbgReportW" in Funktion ""public: class Enemy const & __thiscall std::_Vector_const_iterator<class std::_Vector_val<class Enemy,class std::allocator<class Enemy> > >::operator*(void)const " (??D?$_Vector_const_iterator@V?$_Vector_val@VEnemy@@V?$allocator@VEnemy@@@std@@@std@@@std@@QBEABVEnemy@@XZ)".
    

    ctor von Player:

    Player::Player(const int maxx, const int maxy, std::vector<Enemy> used)
    {
    	pos.x = rand()%(maxx+1);
    	pos.y = rand()%(maxy+1);
    	image = 'o';
    
    	for(int i = 0; i < used.size(); ++i)
    	{
    		if(pos.x == used[i].getpos().x && pos.y == used[i].getpos().y)
    		{
    			pos.x = rand()%(maxx+1);
    			pos.y = rand()%(maxy+1);
    			i = -1;
    		}
    	}
    
    }
    

    cctor von Enemy:

    Enemy::Enemy(const Enemy & cctor)
    {
    	pos = cctor.pos;
    	state = cctor.state;
    	image = cctor.image;
    }
    

    Aufruf des ctor von Player:

    //definition von enemycount und playercount
                      std::vector<Enemy> enemycount;
    		std::vector<Player> playercount;
             for(int i = 0; i < countplayer; ++i)
    	{
    		playercount.push_back(Player(width, height, enemycount));
    	}
    

    Ich bedanke mich für eure Hilfe. Wenn ihr noch Infos oder Code braucht sagts bitte.

    Gruß
    stalker



  • EDIT:
    Verwende VC2010 und bekomme den Fehler im Debugbuild, Präprozessor setzt auch die Debugflags.


  • Mod

    stalker schrieb:

    EDIT:
    Verwende VC2010 und bekomme den Fehler im Debugbuild, Präprozessor setzt auch die Debugflags.

    Aber anscheinend hast du es irgendwie geschafft, nicht gegen die Debug-Runtimebibliothek zu linken. Hast du zufällig in deinem Code irgendwo die Debugsymbole aktiviert (so etwas wie #define _DEBUG ), versuchst aber einen Releasebuild?



  • Guten Morgen,

    sorry, dass ich mich erst jetzt melde.

    SeppJ schrieb:

    Aber anscheinend hast du es irgendwie geschafft, nicht gegen die Debug-Runtimebibliothek zu linken.

    Ja, das wars hab die Releaselaufzeitlib gelinkt gehabt.

    Manchmal sieht man den Wald vor lauter Bäumen nicht. 🙄

    Euch eine schöne Woche.

    Gruß
    stalker


Anmelden zum Antworten