我有一个关于前面提到的问题的查询。修改堆栈的顶部而不访问StackType对象
我被给了这个函数原型void StackPop(NodeType *Top)
并被告知修改堆栈的顶部而不访问堆栈对象。 StackPop
函数这里是一个全局函数,而不是Stack类的成员函数。弹出之后,Top应该指向Top元素的新值。
作为一种解决方案,在这种情况下,只有当我们在调用时将堆栈的顶层节点的地址传递给函数时,才会弹出堆栈的顶部。例如:StackPop(&address);
要修改堆栈
NodeType* temp;
temp = top;
*top = (*top)->next;
delete temp;
这是简单的问题的答案或者是别的,有被照顾的情况下的顶部?
是你的函数参数'Node'还是'NodeType'? –
@Als:编辑。是的,它是'NodeType'。 – Cipher