this is the header file
typedef char ItemType;
struct NodeType;
class StackType
{
public:
StackType();
~StackType();
void Push(ItemType) const;
void Pop();
ItemType Top();
bool IsEmpty() const;
bool IsFull() const;
private:
NodeType* topPtr;
};this is the programe file
#include"StackType.h"
#include<iostream.h>
bool IsOpen(char symbol);
bool IsClosed(char symbol);
bool Matches(char symbol, char openSymbol);
int main()
{
using namespace std;
char symbol;
StackType stack;
bool balanced = true;
char openSymbol;
cout << "Enter an expression and press return." << endl;
cin.get(symbol);
while (symbol != '\n' && balanced)
{
if (IsOpen(symbol))
stack.Push(symbol);
else if (IsClosed(symbol))
{
if (stack.IsEmpty())
balanced = false;
else
{
openSymbol = stack.Top();
stack.Pop();
balanced = Matches(symbol, openSymbol);
}
}
cin.get(symbol);
}
if (balanced)
cout << "Expression is well formed." << endl;
else
cout << "Expression is not well formed." << endl;
return 0;
}
bool IsOpen(char symbol)
{
if ((symbol == '(') || (symbol == '{') || (symbol == '['))
return true;
else
return false;
}
bool IsClosed(char symbol)
{
if ((symbol == ')') || (symbol == '}') || (symbol == ']'))
return true;
else
return false;
}
bool Matches(char symbol, char openSymbol)
{
return (((openSymbol == '(') && symbol == ')')
|| ((openSymbol == '{') && symbol == '}')
|| ((openSymbol == '[') && symbol == ']'));
}the error is:namespace name expected