diff --git a/ruter.cpp b/ruter.cpp index ce2de7ba4212c09ac843d0bb98dc8a19b7dda951..dce79dc93b262f6b7480b33a3192932838e050d7 100644 --- a/ruter.cpp +++ b/ruter.cpp @@ -23,6 +23,7 @@ Ruter::Ruter() { */ Ruter::~Ruter() { skrivTilFil(); + ryddOppMinne(); } /** @@ -278,3 +279,14 @@ void Ruter::skrivTilFil() { fil << "X" << '\n'; } } + +/** + * Fjerner rute pekere fra alle ruter map'et. + * + */ +void Ruter::ryddOppMinne() { + for (auto it = alleRuter.begin(); it != alleRuter.end();) { + delete it->second; + it = alleRuter.erase(it); + } +} \ No newline at end of file diff --git a/ruter.h b/ruter.h index e72458fd4ab15dc0c62eafa7615e142482900b4b..eba05654cfdd8f977ad63d3984149a0f4405858b 100644 --- a/ruter.h +++ b/ruter.h @@ -39,6 +39,7 @@ class Ruter { int lesRute(); void lesFraFil(); void skrivTilFil(); + void ryddOppMinne(); }; #endif //__RUTER_H \ No newline at end of file