Avatar ·

Wie entferne ich ein Element aus std::vector nach Index in C++?

Hallo Kollegen! Ich bin neu in C++ und habe ein Problem bei der Arbeit mit std::vector. Ich muss ein Element nach seinem Index entfernen, finde aber nicht den richtigen Weg.\n\nHier ist mein Code:\n\n```cpp\n#include \n#include \n\nint main() {\n std::vector numbers = {10, 20, 30, 40, 50};\n int index_to_remove = 2; // Ich möchte Element 30 entfernen\n\n // Versuche erase zu verwenden, weiß aber nicht, wie ich den Index übergebe\n // numbers.erase(index_to_remove); // Compiler-Fehler\n\n // Versuche es über Iterator\n numbers.erase(numbers.begin() + index_to_remove);\n\n for (int n : numbers) {\n std::cout << n << " ";\n }\n // Erwarte: 10 20 40 50, aber der Code stürzt ab oder verhält sich seltsam\n return 0;\n}\n```\n\nIch habe die Dokumentation gelesen, bin aber immer noch verwirrt. Warum `erase` n