Newer
Older
#include "Kunder.h"
Kunder::Kunder() : sisteNr(0) {}
void Kunder::leggTilKunde(Kunde* kunde) {
auto it = kunder.begin();
while (it != kunder.end() && (*it)->getKundeNr() < kunde->getKundeNr()) {
++it;
}
kunder.insert(it, kunde);
}
void Kunder::skrivUtKunder() {
int antallKunder = kunder.size();
int sisteKundeNr = antallKunder > 0 ? kunder.back()->getKundeNr() : 0;
char valg ;
std::cout << "Siste kundenummer brukt: " << sisteKundeNr << std::endl;
std::cout << "Antall kunder: " << antallKunder << std::endl;
bool visNeste = true;
for (int i = 0; i < antallKunder && visNeste; i++) {
kunder[i]->skrivData();
if ((i + 1) % 20 == 0) {
valg = lesChar("Vil du se de neste kundene?");
if (valg == 'N') {
visNeste = false;
antallKunder = i + 1; // set antallKunder to the current index
}
}
}
}
Kunde* Kunder::finnKunde(int kundeNr) {
for (auto kunde : kunder) {
if (kunde->getKundeNr() == kundeNr) {
return kunde;
}
}
return nullptr;
}
bool Kunder::fjernKunde(int kundeNr) {
for (auto it = kunder.begin(); it != kunder.end(); ++it) {
if ((*it)->getKundeNr() == kundeNr) {
delete *it;
kunder.erase(it);
return true;
}
}
return false;
}
Kunder::~Kunder() {
for (auto kunde : kunder) {
delete kunde;
}
}