vector
-
der compiler meckert dann immer:
error C2653: 'std' : Keine Klasse oder Namespace
-
#include <vector>
-
jetzt sagt er:
c:\program files\microsoft visual studio\vc98\include\new(35) : error C2061: Syntaxfehler : Bezeichner 'THIS_FILE' c:\program files\microsoft visual studio\vc98\include\new(35) : error C2091: Funktionsergebnis ist eine Funktion c:\program files\microsoft visual studio\vc98\include\new(35) : error C2809: Operator 'new' hat keine formalen Parameter c:\program files\microsoft visual studio\vc98\include\new(36) : error C2061: Syntaxfehler : Bezeichner 'THIS_FILE' c:\program files\microsoft visual studio\vc98\include\new(37) : error C2091: Funktionsergebnis ist eine Funktion c:\program files\microsoft visual studio\vc98\include\new(37) : error C2556: 'void *(__cdecl *__cdecl operator new(void))(unsigned int,const struct std::nothrow_t &)' : Überladene Funktion unterscheidet sich nur hinsichtlich des Rückgabetyps von 'vo id *(__cdecl *__cdecl operator new(void))(unsigned int)' c:\program files\microsoft visual studio\vc98\include\new(35) : Siehe Deklaration von 'new' c:\program files\microsoft visual studio\vc98\include\new(41) : error C2061: Syntaxfehler : Bezeichner 'THIS_FILE' c:\program files\microsoft visual studio\vc98\include\new(42) : error C2091: Funktionsergebnis ist eine Funktion c:\program files\microsoft visual studio\vc98\include\new(42) : error C2556: 'void *(__cdecl *__cdecl operator new(void))(unsigned int,void *)' : Überladene Funktion unterscheidet sich nur hinsichtlich des Rückgabetyps von 'void *(__cdecl *__cdecl o perator new(void))(unsigned int)' c:\program files\microsoft visual studio\vc98\include\new(35) : Siehe Deklaration von 'new' c:\program files\microsoft visual studio\vc98\include\new(42) : error C2809: Operator 'new' hat keine formalen Parameter c:\program files\microsoft visual studio\vc98\include\new(42) : error C2065: '_P' : nichtdeklarierter Bezeichner c:\program files\microsoft visual studio\vc98\include\memory(16) : error C2061: Syntaxfehler : Bezeichner 'THIS_FILE' c:\program files\microsoft visual studio\vc98\include\memory(17) : error C2091: Funktionsergebnis ist eine Funktion c:\program files\microsoft visual studio\vc98\include\memory(17) : error C2784: 'void *(__cdecl *__cdecl operator new(void))(unsigned int,class std::allocator<`template-parameter257'> &)' : Vorlagenargument fuer 'void *(__cdecl *)(unsigned int,class std::allocator<_Ty> &)' von 'void *(__cdecl *)(unsigned int)' konnte nicht hergeleitet werden c:\program files\microsoft visual studio\vc98\include\memory(17) : error C2785: 'void *(__cdecl *__cdecl operator new(void))(unsigned int,class std::allocator<`template-parameter257'> &)' und 'void *(__cdecl *__cdecl operator new(void))(unsigned int )' haben verschiedene Rueckgabetypen c:\program files\microsoft visual studio\vc98\include\memory(16) : Siehe Deklaration von 'new' c:\program files\microsoft visual studio\vc98\include\memory(17) : error C2809: Operator 'new' hat keine formalen Parameter c:\program files\microsoft visual studio\vc98\include\memory(20) : error C2954: Vorlagendefinitionen koennen nicht verschachtelt werden
-
#include <vector> weiter nach oben, vor #ifdef _DEBUG
-
danke funzt. Kann ich zum einfügen die Methode insert nehmen? es soll immer hinten an gehängt werden oder muss ich die Methoden von delete new T() nehmen?
-
Steht doch oben schon: Anfügen mit push_back, letzten entfernen mit pop_back.
-
und letzten auslesen?
-
back
-
ok funktioniert so weit. danke.
Das Problem ist jetzt nur, dass er sich immer nur das letzte Element merkt und die davor eingefügten nicht mehr da sind
-
Zeig mal, wie du einfügst.
-
Also so ist es im Moment:
// Daten in den Vektor eintragen m_vBack.push_back(m_strMLFB);
// letztes Element löschen m_vBack.pop_back(); // jetzt letztes Element auslesen m_strMLFB = m_vBack.back();
-
Und woraus schließt du, dass die davor eingefügten Elemente nicht mehr da sind? Wie verhält sich das Programm, und wie soll es sich verhalten?
-
funktioniert, sorry war ein fehler meinerseits. Vielen Dank