std::vector<int> v = {1, 2, 3, 4, 5} std::list<int> l = {1, 2, 3, 4, 5} auto vb = std::begin(v) vb = vb + 5; auto lb = std::begin(l) lb = lvb + 5; // error std::advance(lb, 5); // ok