//: C04:DequeCoreDump.cpp // From Thinking in C++, 2nd Edition // Available at http://www.BruceEckel.com // (c) Bruce Eckel 2000 // Copyright notice in Copyright.txt // How to break a program using a deque #include #include using namespace std; int main() { deque di(100, 0); // No problem iterating from beginning to end, // even though it spans multiple blocks: copy(di.begin(), di.end(), ostream_iterator(cout, " ")); deque::iterator i = // In the middle: di.begin() + di.size() / 2;; // Walk the iterator forward as you perform // a lot of insertions in the middle: for(int j = 0; j < 1000; j++) { cout << j << endl; di.insert(i++, 1); // Eventually breaks } } ///:~