Nimm den vector, ist unter c++ das selbe.
Ich weis jetzt nicht mehr genau wie es bei Java aussieht, aber bei C++ funktioniert das so (nur ein paar grundlegende Sachen, zum Thema Vektoren ließen sich Seiten füllen):
vector<int> v(5);
Vektor v[0..4] vom Typ Integer. Ob das bei Java mit dem Template anders funktioniert, sollte dir google erzählen. Zugreifen tust du mit zB. v[0], könnte bei Java v(0) sein. v.push_back(123) erzeugt ein neues Element (v[5]) mit dem Wert 123, xyz=v.pop_back() löscht das Element [5] wieder und gibt den Wert zurück.
So sieht das in C++ aus (wirklich nur Basisfunktionen), bei Java dürfte es aber wie gesagt ähnlich sein. Eine 2D Matrix wäre in C++ vector<vector<int> > xyz; Beachte, dass nach <int> ein Leerzeichen stehen muss, sonst interpretiert er das als Stream-Operation >> auf xyz.