Next: Vorgehensweise bei der Implemenmtation
Up: Templates, Exceptions sowie Pogrammierung
Previous: Bsp. für Function-Template
#include <iostream.h> template <class T, int size> class Stack{ private: T elements[size]; int top; public: Stack(); int push(T); int pop(T&); }; template <class T, int size> Stack <T, size>::Stack(){ top = -1; } template <class T, int size> Stack <T, size>::push(T item) { if (top < size-1) { elements[++top]=item; return 1; } else return 0; } template <class T, int size> int Stack <T, size>::pop(T& item) { if (top < 0) return 0; else { item = elements[top--]; return 1; } } int main() { Stack<int, 3> intStack; int i; intStack.push(2); intStack.push(3); for (int j = 0; j < 3; j++) { if (intStack.pop(i)) cout << "Result: " << i << endl; else cerr << "No Element" << endl; } }
© 1997 Gottfried Rudorfer, C++-AG, Lehrveranstaltungen, Abteilung für Angewandte Informatik, Wirtschaftsuniversität Wien, 3/19/1998 |