Witam serdecznie. Zwracam się o jak najszybszą pomoc, ponieważ dzisiaj muszę rozwiązać mój problem. Mianowicie. Piszę program, który ma być wypożyczalnią. Posiadam taką metodę:
void ManagerWypozyczen::wypozyczenie(int pojazdID, int klientID) {
ManagerPojazdow *m;
m = new ManagerPojazdow;
Manager_Klientow *k;
k = new Manager_Klientow;
Pojazd *pojazd = m->getPojazd(pojazdID);
Klient *klient = k->getKlient(klientID);
WypozyczPojazd(pojazd,klient);
delete m;
delete k;
}
W momencie jej wywołania tworzą się obiekty dwóch managerów i wywołują się kolejno dwie metody getPojazd oraz getKlient. Do obu przekazuje wartość int. Prezentują się one tak:
Pojazd* ManagerPojazdow::getPojazd(int pojazdID){
int error = 0;
vector<Pojazd*>::iterator i;
for (i=pojazdy.begin(); i!=pojazdy.end();++i){
if((*i)->Get_IDpojazdu() == pojazdID) {error = 1; break;}
}
if(error == 0){ cout << "POJAZD NIE ISTNIEJE" << endl;}
else {return (*i);}
}
W tej metodzie wywołuje się jeszcze jedna, która powinna zwracać ID mojego pojazdu, który przypisuje się do pojazdu w konstruktorze, w momencie tworzenia obiektu.
int Pojazd::Get_IDpojazdu()
{
return IDpojazdu;
}
W momencie uruchomienia programu i próby stworzenia wypożyczenia, ukazuje mi się komunikat "POJAZD NIE ISTNIEJE". Nie jest to prawdą, ponieważ gdy wywołam metodę wypisującą wszystkie utworzone pojazdy, to mi się pokazuje każdy wraz z numerem ID. Nie mogę dojść do tego, co w tej metodzie jest nie tak. Z góry dziękuję za szybką pomoc.