tmpl/expltest1.cpp

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;
    }
}