Löschen im zwei-dimensionalen Container Vector
- 
					
					
					
					
 Hallo, habe ein zwei-dimensionales Vector-Gebilde mit int-Zahlen: 
 vector < vector<int> > region;Möchte jetzt nicht einen einzigen int-Wert löschen, sondern eine ganze Reihe an int-Werten, die in einem Vektor stehen. Also z.b. den Vektor[2] löschen, in dem die Werte Vektor[2][0],Vektor[2][1],Vektor[2][2],Vektor[2][3],etc. drin stehen. Wie kann man das machen ? Geht das überhaupt ? Wird die Lücke dann geschlossen, oder sollte ich eine andere Container-Klasse verwenden? Habs schon mit dem Iterator versucht 
 Vektor.erase(pos) aber hat er nicht akzeptiert.danke 
 
- 
					
					
					
					
 Diese lösung gilt jetzt für std::vector<> aber es gibt Container bei denen das nicht aufgrund der iterator eigenschaften funktioniert. Vektor.erase( Vektor.begin() + pos);
 
- 
					
					
					
					
 Hmmm, bei mir bringt er den Fehler: Zwei Zeiger koennen nicht addiert werden für die Zeile: Vektor.erase( Vektor.begin() + pos);
 
- 
					
					
					
					
 pos sollte auch ne zahl sein, und kein iterator Oder was ist pos bei dir? typedef std::vector< std::vector<int> > VecType; VecType vec( 3 , std::vector<int>( 3, 10 ) ); // 3x3 mit jeweils 10 als wert vec.erase( vec.begin() + 1 ); // <-- so meine ich das
 
- 
					
					
					
					
 Ja, 
 pos war bei mir Iterator.
 Ausgezeichnet. Funktioniert jetzt so, wie ich´s wollte. vielen dank 