Ich habe mich gefragt, warum der Test unterWie Container end() Iterator entwickelt, wenn (zB) Gebindegröße ändern
end_iter_mem == intList.end()
return true
Sollte sich der end() "Wert" des Containers nicht ändern, wenn (unter anderem) die Anzahl der Elemente des Containers zunimmt?
#include <iostream>
#include <list>
using namespace std;
int main()
{
list<int> intList = {1,2,3};
auto end_iter_mem = intList.end();
intList.push_back(4);
cout << (end_iter_mem == intList.end()) << endl;
return 0;
}
Related: https://StackOverflow.com/Questions/6438086/iterator-invalidation-Rules – Rakete1111