Mercurial > Algorithms__Sedgewick
annotate algs4-c++/src/ResizingArrayStack.cpp @ 27:80ca1973e3bd
Fleshed out Queue::generic_iterator a bit more to make it a more or less complete example of implmenting an iterator.
author | Eris Caffee <discordia@eldalin.com> |
---|---|
date | Tue, 23 Jun 2015 17:14:09 -0500 |
parents | 3db1a894bbdf |
children |
rev | line source |
---|---|
discordia@18 | 1 // g++ -std=c++11 ResizingArrayStack.cpp |
discordia@3 | 2 |
discordia@3 | 3 |
discordia@3 | 4 #include "ResizingArrayStack.hpp" |
discordia@3 | 5 |
discordia@3 | 6 #include <iostream> |
discordia@3 | 7 |
discordia@3 | 8 int main ( int argc, char **argv ) { |
discordia@3 | 9 |
discordia@3 | 10 ResizingArrayStack<long> stack; |
discordia@3 | 11 |
discordia@3 | 12 long i; |
discordia@3 | 13 while ( ! std::cin.eof() ) { |
discordia@3 | 14 std::cin >> i; |
discordia@3 | 15 if ( std::cin.good() ) |
discordia@3 | 16 stack.push(i); |
discordia@3 | 17 } |
discordia@3 | 18 |
discordia@3 | 19 std::cout << "Stack has " << stack.size() << " entries." << std::endl; |
discordia@3 | 20 |
discordia@4 | 21 for ( auto iter = stack.begin(); iter != stack.end(); ++iter ) { |
discordia@4 | 22 std::cout << *iter << std::endl; |
discordia@4 | 23 } |
discordia@4 | 24 |
discordia@4 | 25 std::cout << "Popping entries..." << std::endl; |
discordia@4 | 26 |
discordia@3 | 27 while ( ! stack.is_empty() ) { |
discordia@3 | 28 i = stack.pop(); |
discordia@3 | 29 std::cout << i << std::endl; |
discordia@3 | 30 } |
discordia@4 | 31 |
discordia@4 | 32 std::cout << "Stack has " << stack.size() << " entries." << std::endl; |
discordia@4 | 33 |
discordia@3 | 34 } |
discordia@3 | 35 |