Wird verwendet wenn anschliessend mit vd.push_back(..) oder copy gefüllt wird.
Optional kann auch nachträglich die Grösse gesetzt werden, z.B. vd.resize(100)
Dann Zugriff mit z.B. vd[17] ok.
Damit kann man z.B. einen 2-dim Arrray oder Matrix emulieren
vector< vector< double > > vvd(4, vector<double>(6));
legt eine
Matrix mit 4 Zeilen und 6 Spalten an. Zugriff auf die Elemente
geht mit z.B.
vvd[3][2]
Insbesondere bei verschachtelten Vektoren:
vector< vector< int > > vvi(10);
Legt nur den
ausseren Vektor an, d.h.
vvi[4] existiert, ist aber leerer Vektor vom Typ int.
Am besten immer size() oder begin() bzw. end() mittesten:
for(vector <char> ::iterator p=vec1.begin(); |
(p !=vec1.begin()+30)&&(p !=vec1.end()); p++) { |
cout « *p; |
}; |
for(int i=0; (i<30)&&(i<vec1.size()); i++) { |
cout « vec1[i]; |
}; |
GDuckeck 2019-08-01