#include #include "stack.h" void useStack(Stack &s) { std::cout<<"<<< Stack >>>------------------------------\n"; s.push(10); s.push(20); std::cout<<"\n Topo= "<fim() ) std::cout<<" pilha: "<prox(); std::cout<<"\n"; std::cout<<"\nImprimindo Lista-2 -----------------------------\n"; StackIterator *it2 = s.iterator(); it2->percorre(); std::cout<<"\n"; std::cout<<"\n"; } //Global Variable // StackVE s0; // StackVE *s0ptr = new StackVE(4); int main() { std::cout<<"--------- Inicio do main --------\n"; // useStack(s0); // useStack(*s0ptr); // Observe a ordem de invocacao dos destructores // if( opcaoUsuario ) { // StackVE s1; // useStack(s1); Stack *s1 = Stack::create(Stack::STACK_LE); useStack(*s1); // } // else { // StackLE s2; // useStack(s2); Stack *s2 = Stack::create(Stack::STACK_VE); useStack(*s2); // } system("pause"); }