Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- template<class T> class stack{
- public:
- stack(int s);
- void push(T);
- T pop();
- void print();
- bool EMPTY;
- bool FULL;
- private:
- int size; // Размер выделяемого массива
- int count; // Элементов в этом массиве
- T * elements;
- };
- template<class T> stack<T>::stack(int s)
- {
- count = 0;
- size = s;
- EMPTY = true;
- FULL = false;
- elements = new T[size];
- }
- template<class T> void stack<T>::push(T item)
- {
- if(FULL)
- {
- cout << "Cant do it!" << endl;
- return;
- }
- EMPTY = false;
- elements[count] = item;
- count++;
- if (count == size-1)
- FULL = true;
- }
- template<class T> T stack<T>::pop()
- {
- if (EMPTY)
- {
- cout << "Cant do it!" << endl;
- return T();
- }
- count--;
- if(count == 0)
- EMPTY = true;
- return elements[count+1];
- }
- template<class T> void stack<T>::print()
- {
- for(int a=0;a<count;a++)
- cout << "Element " << a << " = " << elements[a] << " ;" << endl;
- }
- int main(int argc, char* argv[])
- {
- return 0;
- }
Add Comment
Please, Sign In to add comment