Powiel możliwe:
Will exit() or an exception prevent an end-of-scope destructor from being called?Czy wywołują destruktory podczas wywoływania metody exit()?
W C++, gdy aplikacja wywołuje exit (3) są destruktory na stosie miał być prowadzony na odpoczynek stos?
Czy istnieje alternatywne podejście? 'throw' specjalny typ zamiast wywoływania' exit', przechwytuje go w 'main', a następnie' return' z 'main' zamiast' exit' z 'main'? –
@AaronMcDaid Nie rozumiem twojego pytania. Alternatywne podejście do czego? Co chciałbyś osiągnąć, unikając wywołania 'exit()'? W jednej z moich aplikacji wyrzucam obiekt 'customExit' i przechwytuję go w main oraz używam wartości całkowitej z obiektu' customExit' w celu dostarczenia zwracanej wartości z głównego, w ten sposób moje destruktory RAII są uruchamiane w celu czyszczenia takich rzeczy jak pliki tymczasowe. – WilliamKF
Twój komentarz odpowiedział dokładnie na moje (źle napisane) pytanie. Dzięki! Zasadniczo chciałem potwierdzenia, że inne osoby używają tego podejścia "rzucania", aby zapewnić, że wszystko zostanie zniszczone w normalnym wyjściu z programu. –