strange error in stack program : try and catch statement

namrata's Avatar, Join Date: Jan 2007
Newbie Member
I am getting very strange error in stack program when I am compiling it
Stack.cpp:45: error: expected unqualified-id before "try"
Stack.cpp:51: error: expected unqualified-id before "catch"
Stack.cpp:58: error: expected unqualified-id before "catch"

can anyone resolve it here's my code

top = -1;

bool StackType::IsEmpty() const
return (top == -1);

bool StackType::IsFull() const
return (top == MAX_SIZE-1);

void StackType:ush(char newItem)
if (IsFull())
throw FullStack();
items[top] = newItem;


stack.Push(item) ;
cout<<item<<"pushed onto stack"<<endl;

}catch (FullStack exceptionObject)

cerr << "FullStack exception thrown" << endl;[/b]}

catch (EmptyStack exceptionObject)
cerr<< "EmptyStack exception thrown" << endl;
<< "Exiting with error code 2" << endl;

char StackType:op()
throw EmptyStack();

char StackType::Top()

if (IsEmpty())
throw EmptyStack();
return items[top];

Last edited by shabbir; 29Sep2008 at 18:33.. Reason: Code block
xpi0t0s's Avatar, Join Date: Aug 2004
Your try...catch block should be in a function, but it isn't. Is it meant to be within the StackType:ush function?

Are the functions meant to be called ush and op, r id ou ean o iss ff he irst etter?
ahamed101's Avatar, Join Date: Sep 2008
Go4Expert Member
Yes, your try...catch block cannot be a stand alone stuff... It should be within a function...