Question:Use the Stack mehod and a temporary Stack to retrieve entries from the Stack source and add each entry to the Stack dest and restore the Stack source.
用栈的方法,通过使用临时定义的一个栈,将source栈的元素压到dest栈内,并恢复 source栈。
Answer:
Error_code copy_stack(Stack&dest,Stack&source)
{
Stack temp;
Stack_entry item;
while(!source.empty()&&source.top(item)==success&&source.pop()==success)
{
while(t.push(item)==success&&!t.empty()&&t.top(item)==success&&t.pop()==success)
{
if(source.push(item)==success&&dest.push(item)==success)
return success;
else
return overflow;
}
}