vector
-
Hallo,
Danke für die schnelle AntwortZeige die jetzt noch einige Zeilen, und sage mir, ob diese richtig sind.
deklarieren:
std::vector<vector<int> > Test;lesen/schreiben:
iTest = Test[1],[1];hier komme ich mit den Klammern nicht zurecht.
löschen eines vectors
Test. ???????????größe eines vectors
iSize = Test. ???????????Gruß Siegfried
-
Hallo
lesen/schreiben:
iTest = Test[1],[1];hier komme ich mit den Klammern nicht zurecht.
du kannst das mit zwei Möglichkeiten machen
iTest = Test[1][1]; iTest = Test.at(1).at(1);löschen eines vectors
Test. ???????????Test.erase(...); // Zeile löschen Test[1].erase(...); // Element aus Zeile 2 löschengröße eines vectors
iSize = Test. ???????????iSize = Test.size(); // Anzahl Zeilen iSize = Test(1).size(); // Anzahl Elemente in Zeile 2Bitte schau im C++ Subforum, in der BCB-Hilfe oder in der Referenz nach vector, um dich erstmal mit den Mehtoden der vector-Klasse vertraut zu machen.
bis bald
akari
-
Hallo,
ich versuche zuerst in der Hilfe und im Forum fündig zu werden. Habe leider kein Beispiel mit der doppelten Variante gefunden. Habe jetzt noch diese Frage.
Wie stelle ich diese Code um ?Test.resize(Test.size() + 5);Vielen Dank im voraus
Gruß Siegfried
-
Hallo
Wie stelle ich diese Code um ?
Keine Ahnung, der Code ist lauffähig. Was willst du denn erreichen?
bis bald
akari
-
Hallo,
habe bemerkt, das meine Fragestellung nicht gut gelungen ist. Gehen wir von einem leerem Vector aus. Nun möchte ich die größe des vectors "A" auf 5 einstellen und die größe der vectoren "AB" 1 = 10, 2 = 20, 3 = 30, usw einrichten. Der Vector "A" soll die Zeiger auf die Vectoren "AB" haben und die "AB" die eigentliche "Daten" in unterschiedlichen Anzahl der Einträge.
Nur das einrichten der Größe der vectoren "A" und "AB" fehlt mir noch.
Im Programm wird eine Routine durchlaufen, die die unterschiedlichsten Anzahl von Einträge in den Vector "AB" erstellt. Beim erstem Durchlauf wird also der Zeiger von "AB" in "A" festgehalten. Im nächsten Durchlauf erneut die Einträge in "AB" und dessen Zeiger in "A" + 1. Somit möchte ich, das ich direkt in einer anderen Routine auf die Zelle Test[2][12] zugreifen kann.Ich hoffe, das es gut beschrieben worden ist.
Bitte um Verständnis für das genaue nachfragen, benötige durch mein Alter etwas mehr Zeit um dies zu verartbeiten.Habe vergessen, das ich die Größe der Vectoren während der Laufzeit erzeuge. Kann diese nicht konstant einstellen.
Gruß Siegfried

-
Hallo
vector<vector<int> > Test; Test.assign(5, vector<int>()); // In Test genau 5 leere Zeilen erstellen, alte Werte werden komplett gelöscht Test[0].assign(10, 0); // In der ersten Zeile genau 10 Elemente mit dem Wert 0 erstellen/Edit : Wenn du lieber gleich individuelle Werte erstellen willst, dann nimm eine Schleife und die Methode push_back.
bis bald
akari
-
Hallo,
Danke für deine Ausführungen. Habe eine kleine Routine zum testen erstellt, und ich glaube das diese so arbeitet, wie ich dies benötige..h
std::vector<vector<int> > vviAktionRoute; int iCount_1 = 0; int iCount_2 = 0;.cpp
vviAktionRoute.resize(vviAktionRoute.size() + 1, vector<int>()); iCount_2 += 10; vviAktionRoute[iCount_1].resize(vviAktionRoute[iCount_1].size() + iCount_2); iCount_1 += 1;Diese Routine sollte bei jedem Durchlauf den Vector "A" um eins vergrößern und den Vector "AB" auf n Einträge erstellen, ohne das hier der Inhalt der bereits in den vorhandene Vectoren verloren geht. Wie beurteilt du dieses ?
Gruß Siegfried
-
Hallo
vviAktionRoute.resize(vviAktionRoute.size() + 1, vector<int>()); iCount_2 += 10; vviAktionRoute[iCount_1].resize(iCount_2); // Reicht an dieser Stelle, da die neue Zeile auf jeden Fall 0 Elementa besitzt iCount_1 += 1;bis bald
akari
-
Hallo,
habe bewußt dies so gemacht, da unter gewissen Bedingungen kein neuer Vector "A" erstellt wird, sondern nur auf einen bestehenden Vector "A" zugegriffen wird und dessen (zeiger / Vector) die größe verändert wird, ohne das der Inhalt aller bestehende Vectoren verloren geht.
Hoffe, das mein Weg der richtige ist. Werde mein Erfolg später kurz posten. Vielen Dank für deine Hilfe!!!

Gut Ding braucht Weile
Gruß Siegfried
-
Dieser Thread wurde von Moderator/in Jansen aus dem Forum VCL/CLX (Borland C++ Builder) in das Forum C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.