Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include "Header.h"
- using namespace std;
- template <typename T>
- class stack {
- public:
- T data;
- stack *stackPtr;
- stack() {
- *stackPtr = nullptr;
- }
- };
- template <typename T>
- class stackIterator {
- public:
- stack *topStackPtr;
- stackIterator() {
- *topStackPtr->stackPtr = new stack;
- }
- void addToStack(T);
- void popTop();
- T getTop();
- };
- template <typename T>
- void stackIterator::addToStack(T) {
- stack *newStackObject->stackPtr = *topStackPtr->stackPtr;
- *topStackPtr->stackPtr = *newStackObject->stackPtr;
- }
- template <typename T>
- void stackIterator::popTop() {
- stack tempStackPtr = *topStackPtr->stackPtr;
- stack nextStackPtr = tempStackPtr.stackPtr;
- *topStackPtr->stackPtr = nextStackPtr;
- delete nextStackPtr;
- }
- template <typename T>
- T stackIterator::getTop() {
- T returnObject;
- returnObject = *topStackPtr->data;
- return returnObject;
- }
- void main() {
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment