Wenn ich vector<double> v;
definiere belegt dieser Vektor aufeinanderfolgende Speicherplätze? Wenn es aufeinanderfolgende Speicherplätze belegt, was würde passieren, wenn ich diesem Vektor ein neues Element hinzufüge, während nicht genügend Speicherplätze direkt hinter dem letzten Element vorhanden sind?Beeitigt ein Vektor in C++ aufeinanderfolgende Speichersteckplätze?
0
A
Antwort
0
http://en.cppreference.com/w/cpp/container/vector
Die Elemente werden zusammenhängend gespeichert, was bedeutet, dass die Elemente nicht nur durch Iteratoren zugegriffen werden kann, sondern auch Verschiebungen auf den regulären Zeiger auf Elemente verwenden.
Verwandte Themen
- 1. Wie ein Vektor in C
- 2. C# Normalisieren (wie ein Vektor)
- 3. Entfernen vollständig ein Vektor C++
- 4. Vektor Vektor C++
- 5. Vektor Vektor Puffer C++
- 6. Merging zwei aufeinanderfolgende Werte
- 7. ein Vektor
- 8. Was wäre ein guter Ersatz für C++ Vektor in C#?
- 9. Bytes in Vektor C++
- 10. Ein gutes C-Äquivalent von STL-Vektor?
- 11. Rückkehr ist ein leeren Vektor C++
- 12. Wie filtert oder "grep" ein C++ Vektor?
- 13. Expose ein numpy Array als C++ Vektor
- 14. Vektor von Puffern in C++
- 15. C++ Zeiger auf aufeinanderfolgende Vektorelemente sind paradox
- 16. C++: Vektor in Tupel konvertieren
- 17. const Vektor Referenzargumente in C++
- 18. wenn ein Vektor bestellt
- 19. C++ unordered_map in Vektor einfügen
- 20. 2D-Vektor in C++ umformen
- 21. Vektor von Tuples in C++
- 22. Vektor in C++ - Druckeingabe wiederholt
- 23. С ++ Vektor Äquivalent in C
- 24. Dynamisches Array Vektor in C
- 25. Verständnis Vektor Initialisierung in C++
- 26. C++ - Vektor-Arrays in Kopierkonstruktoren
- 27. Wie replizieren Vektor in c?
- 28. Initialisierung 2D Vektor in C++
- 29. Vektor von Klassen in C++
- 30. Aufeinanderfolgende Trennzeichen in StringTokenizer
Ja. Es wird die Elemente neu zuweisen, wenn sie nicht in den aktuell zugewiesenen Speicherplatz passen. – wally
Dies wird als zusammenhängender Speicher bezeichnet, und es gibt zwei Standardcontainer, die dies garantieren: Vektor und Array. In C++ 17 fügen sie einen Iterator mit dieser Garantie hinzu: ContiguousIterator. – jaggedSpire
Diese Art von Speicher ermöglicht es Ihnen, Elemente in solchen Datenstrukturen in O (1) Komplexität (sehr schnell) abzurufen. – Spidey