command pattern sam vec isprogramirao pa me i zanima da li macro treba da bude jedna od komandi ili ne. jos jedna stvar, dali je moguce kopirati jedan stacjk u drugi. imam sljedeci slucaj, imam jednu klasu npr. AddOperation koja je izvedena iz klase Operation i ta klasa prima stack na kojem su brojevi. moj kalkulator treba da cita prva dva unesena broja i ja trebam iscitati zadnja dva. ja sam to ovako zamislio, imam jednu metodu koja ce napraviti clone od stacka i i onda kazem nr2 = stack.top() i nr1 = stack.top() i ovdje iscitam zadnja dva broja i opet vratim ostatak u izvorni stack. postojili neki nacin mogu reci stack2=stack1. otprilike ovako:
Code:
void MathOperation::getLastTwoElementsFromStack(CalculatorStack *my_stack)
{
CalculatorStack temp;
for(int i=0; i < my_stack->getSize();i++)
temp.push(my_stack->top()); // ovdje se iscita vrijednost koja se nalazi na my_stack ali je ne brise sa stacka.
// problem je u tome da predajem preko jednog pointera, dakle treba mi pointer na pointer jer prenosim stack sa jedne funkcije na drugu
// to sam vec jednom morao raditi. imali neko elegantnije rjesenje da iscitam zadnja dva broja???
// sad na stacku imam samo zadnja dva broja i njih iscitam to je to....
}
hvala za odgovore