The following code example is taken from the book
Object-Oriented Programming in C++
by Nicolai M. Josuttis, Wiley, 2002
© Copyright Nicolai M. Josuttis 2002
#include <iostream>
#include <deque>
#include <cstdlib>
#include "stack3.hpp"
int main()
{
try {
// stack for integers
CPPBook::Stack<int> intStack;
// stack for floating-point values
CPPBook::Stack<double,std::deque<double> > dblStack;
// manipulate integer stack
intStack.push(7);
std::cout << intStack.top() << std::endl;
intStack.pop();
// manipulate floating-point value stack
dblStack.push(42.42);
std::cout << dblStack.top() << std::endl;
dblStack.pop();
std::cout << dblStack.top() << std::endl;
dblStack.pop();
}
catch (const char* msg) {
std::cerr << "Exception: " << msg << std::endl;
return EXIT_FAILURE;
}
}