gft_stack.h
Go to the documentation of this file.
1 
2 #ifndef _GFT_STACK_H
3 #define _GFT_STACK_H 1
4 
5 #include "gft_common.h"
6 
7 namespace gft{
8  namespace Stack{
9 
10  typedef struct _stack {
11  int *data;
12  int top;
13  int n;
14  } Stack;
15 
16  Stack *Create(int n);
17  void Destroy(Stack **S);
18  void Push(Stack *S, int p);
22  int Pop(Stack *S);
23 
24  inline int IsEmpty(Stack *S){ return(S->top == -1); }
25 
26  } //end Stack namespace
27 } //end gft namespace
28 
29 #endif
void Push(Stack *S, int p)
Definition: gft_stack.cpp:27
int n
Definition: gft_stack.h:13
int * data
Definition: gft_stack.h:11
void Destroy(Stack **S)
Definition: gft_stack.cpp:18
Definition: gft_stack.h:10
int top
Definition: gft_stack.h:12
Stack * Create(int n)
Definition: gft_stack.cpp:7
Header file for common definitions and function prototypes.
int IsEmpty(Stack *S)
Definition: gft_stack.h:24
struct gft::Stack::_stack Stack
int Pop(Stack *S)
Definition: gft_stack.cpp:31