#include #include #include int main() { std::deque jobs{10, 20, 30}; int* middle = &jobs[1]; jobs.push_front(5); jobs.push_back(40); assert(*middle == 20 && middle == &jobs[2]); auto keep = jobs.begin() + 2; jobs.pop_front(); assert(*keep == 20); assert(keep == jobs.begin() + 1); jobs.pop_back(); assert(*keep == 20); assert((jobs == std::deque{10, 20, 30})); std::cout << jobs.front() << ' ' << *keep << ' ' << jobs.back() << '\n'; }