Mam klase Faktura, z której dziedziczą dwie klasy FakturaPryw i FakturaFirm. Do tego klasa Faktury, która ma dwa wektory jeden wektor obiektow klasy FakturaPryw i jeden tych FakturaFirm. jedna z metod klasy Faktury ma usuwać konkretny element wektora. Sposób na odnalezienie elementu po numerze faktury już mam, ale przy próbie usunięcia wyskakuje mi taki błąd. Ktos wie jak go naprawić?
bool Faktury::usunFakture(int nr)
{
int x;
for (size_t i = 0; i < fakturyFirm.size(); i++)
{
if (fakturyFirm[i].getNr() == nr)
{
std::cout << "Na pewno usunac fakture o numerze " << nr << "?" << std::endl;
std::cout << "1. Tak" << std::endl;
std::cout << "2. Nie" << std::endl;
x = 0;
while ((x != 1) && (x != 2))
{
std::cin >> x;
switch (x)
{
case 1:
return true;
case 2:
return false;
default:
std::cout << "Wprowadzono nieprawidlowa wartosc" << std::endl;
break;
}
}
}
}
for (size_t i = 0; i < fakturyPryw.size(); i++)
{
if (fakturyPryw[i].getNr() == nr)
{
std::cout << "Na pewno usunac fakture o numerze " << nr << "?" << std::endl;
std::cout << "1. Tak" << std::endl;
std::cout << "2. Nie" << std::endl;
std::cin >> x;
switch (x)
{
case 1:
fakturyPryw.erase(i);
return true;
case 2:
return false;
}
}
}
return false;
}