所以我使用动态堆栈,我想写一个复制构造函数,它必须从同一个类的另一个实例复制堆栈的数据。我试图编写这个函数,但看起来很难。有人能帮我一把吗?如何复制堆栈?
template<typename T=int>
class LStack
{
public:
template<typename U=int>
struct elem
{
U con;
elem<U>* link;
}
private:
elem<T>* el;
void Copystack(Lstack const& stack) // HERE
{
elem<T>* last = el;
el->con = stack->con;
while(stack->link != null)
{
var temp = new elem<T>;
temp->con = stack->con;
temp->link = stack->link;
stack = stack->link;
}
}
};
这可能是一个重复的问题:http://stackoverflow.com/questions/8948795/assign-values-of-a-stack-to-another-stack 祝你好运! –
您是否试图将元素从先入先出复制到后进入或从后进入到先入? – Beta
它必须以相同的顺序 –