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 <string>
#include <cstdlib>
#include "expl.hpp"
int main()
{
try {
CPPBook::Stack<int> intStack; // stack for integers
CPPBook::Stack<std::string> stringStack; // stack for strings
// manipulate integer stack
intStack.push(7);
intStack.push(max(intStack.top(),42)); // max() for ints
std::cout << intStack.top() << std::endl;
intStack.pop();
// manipulate string stack
std::string s = "hello";
stringStack.push(s);
stringStack.pop();
stringStack.pop();
}
catch (const char* msg) {
std::cerr << "Exception: " << msg << std::endl;
return EXIT_FAILURE;
}
}