Heim >Backend-Entwicklung >C++ >Wie lösche ich Elemente aus einem std::vector nach Index?

Wie lösche ich Elemente aus einem std::vector nach Index?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-13 04:52:14722Durchsuche

How to Delete Elements from a std::vector by Index?

Elemente aus std::vector nach Index löschen

Abfrage:

Wie mache ich Löschen Sie bestimmte Elemente aus einem std::vector basierend auf ihrem Index Werte?

Ansatz:

Um Elemente aus einem std::vector nach Index zu löschen, verwenden Sie die Löschfunktion. Für diese Funktion sind Iteratoren erforderlich, die die Start- und Endpunkte der zu entfernenden Elemente angeben.

Lösung:

Löschen eines einzelnen Elements:

Um ein einzelnes Element an einem bestimmten Index zu löschen, verwenden Sie Folgendes Ansatz:

vec.erase(std::next(vec.begin(), n));

Wobei:

  • vec stellt den std::vector dar.
  • n ist der Index des zu löschenden Elements (die Indizierung beginnt bei 0).

Mehrere löschen Elemente:

Zum Löschen mehrerer aufeinanderfolgender Elemente stellen Sie einen zusätzlichen Iterator für die Löschfunktion bereit und definieren den Endpunkt:

vec.erase(std::next(vec.begin(), startIndex), std::next(vec.begin(), endIndex));

Wo:

  • vec ist der std::vector.
  • startIndex ist der Index des ersten Elements gelöscht.
  • endIndex ist der Index des letzten zu löschenden Elements (einschließlich).

Das obige ist der detaillierte Inhalt vonWie lösche ich Elemente aus einem std::vector nach Index?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn