Zachęcam do oceny kodu.
Nie podoba mi się zawartość main, która nic nie mówi o przebiegu programu. Po jaką cholerkę w switchu w funkcji executeOptions()w każdym case alokujesz pamięć na pojedyncze zmienne double? Jaki to ma sens? I nie używamy exit() w C++, to jest narzędzie do mordowania programu, nie jego zakańczania.
Jego problemem jest zżeranie pamięci. Jakieś pomysły?
Poprawnie zarządzasz pamięcią. Chciałem dla pewności sprawdzić program Valgrindem, ale mi się zawiesił, co poradzę...? :/ Stawiam na to, że po prostu przy użyciu modułu SFML/graphics, ładowana do pamięci jest zawartość tej biblioteki i w tej pamięci zostaje. Nie przejmowałbym się tym, chyba że tendencja jest wzrostowa, czego nie zauważyłem.