Ich möchte einen std::vektor an einer bestimmten Stelle im Speicher erstellen. Wie geht das?
Nein das geht nicht. Das kann auch nicht gehen, wegen der Architektur eines OS das Multithreading unterstützt.
Wird ein std::vector überhaupt linear in einem Speicherbereich aufgebaut oder gibt's da "Querverweise" wie in einer Liste?
Ich habe jetzt ein paar Versuche hinter mir und habe festgestellt, dass alle (egal wie viele Einträge) std::vector eine Größe von 16 Bytes haben. Das heißt, dass sich mein Probem erledigt hat.
Er müssten eigentlich wie eine Liste mit Zeigern auf das jeweils nächste Element aufgebaut sein.
Bitte Doku lesen.... std::vector muss nämlich gerade nicht die Werte in einer Verketteten List speichern. Es ist ein Vektor und keine Liste
Dafür ist nämlich std::list zuständig.
Wenn dein Typ 16Byte groß ist, ist es klar das jeder Eintrag au 16Byte groß ist. Das ist nun einmal die Eigenschaft eines Vektors. Wenn alle 100 Einträge voll sind, spielt das au keine Rolle. Dann wird das Array eben vergrößert.