Gibt es eine Möglichkeit, die Dimensionen eines verschachtelten STL-Vektors C ++ anzugeben?

8

Ich weiß, dass Vektoren zu einer vordefinierten Größe konstruiert werden können

%Vor%

Aber gibt es eine Möglichkeit, die Dimensionen verschachtelter Vektoren anzugeben?

%Vor%

Nehmen wir an, ich wollte einen Vektor der Größe 4 mit Vektoren der Größe 4 ... wie ein 4x4 multidimensionales Array von Ints?

    
zebraman 19.04.2010, 07:55
quelle

2 Antworten

25

Das zweite Argument zu diesem Konstruktor ist der Wert, mit dem initialisiert werden soll. Im Moment erhalten Sie 4 standardmäßig konstruierte Vektoren. Um es mit einem einfacheren 1D-Beispiel zu verdeutlichen:

%Vor%

Sie wollen also:

%Vor%

Dies erzeugt einen Vektor von Vektoren von ints, initialisiert, um 4 Vektoren zu enthalten, die initialisiert sind, um 4 ints zu enthalten, initialisiert auf 0. (Sie könnten einen Standardwert für den int angeben, falls gewünscht.)

Ein Mund voller, aber nicht zu hart. :)

Für ein Paar:

%Vor%     
GManNickG 19.04.2010, 07:59
quelle
1

Alternativ zu std::vector können Sie boost::multi_array verwenden. Von der Dokumentation :

%Vor%     
wilhelmtell 19.04.2010 08:56
quelle

Tags und Links