Iteration über std::vector: unsigned vs signed Index – was wählen?
Hallo zusammen! Ich habe vor kurzem angefangen, C++ zu lernen, und bin auf ein Problem bei der Iteration über `std::vector` gestoßen. Wenn ich eine Schleife schreibe, verwende ich normalerweise `int i`, aber der Compiler (GCC) gibt eine Warnung zum Vergleich von signed und unsigned aus. Hier ist ein Beispiel:\n\n```cpp\n#include \n#include \n\nint main() {\n std::vector vec = {1, 2, 3, 4, 5};\n for (int i = 0; i < vec.size(); ++i) { // Warnung: Vergleich signed/unsigned\n std::cout << vec[i] << " ";\n }\n return 0;\n}\n```\n\nWarnung: `warning: comparison between signed and unsigned integer expressions [-Wsign-compare]`.\n\nIch verstehe, dass `vec.size()` `size_t` (unsigned) zurückgibt, während `i` bei mir `int` (signed) ist. Wenn ich `int` in `size_t` oder `unsigned int` ändere, verschwindet die Warnung. Aber dann kann ich nicht