// @topic T060720 Stack of integers v2
// @brief Stack class declaration with copy constructor and destructor
#ifndef STACK_H_INCLUDED_
#define STACK_H_INCLUDED_
#include <iostream>
class Stack {
static const int DEFAULT_CAPACITY = 1024;
int* stack_memory;
int capacity;
int top_pos;
public:
// constructors/destructor
Stack();
Stack(int initial_capacity);
Stack(Stack const& other);
~Stack(); // destructor
// stack operations
void push(int value);
void pop();
int top() const;
int& top();
int size() const;
};// class Stack
#endif //STACK_H_INCLUDED_