Poprawne użycie exit () w c ++?

Napisałem prostą aplikację, która odczytuje plik danych, analizuje tekst, a następnie przetwarza dane. Plik danych jest otwierany w mojej funkcji main (). Czy dobrą praktyką programistyczną jest użycie funkcji exit (), jeśli ustalono, że plik nie został poprawnie otwarty? na przykład:

if (!file.is_open() ){
     exit(1);
}

Ponadto mój program ma oddzielną funkcję do analizowania danych w pliku. Ta funkcja jest wywoływana przez main (). Jeśli funkcja znajdzie błąd w danych, chcę zatrzymać program po wydrukowaniu komunikatu o błędzie. Czy w takiej sytuacji dopuszczalne jest użycie funkcji exit () w mojej funkcji parsowania? Zadaję to pytanie, ponieważ wydaje mi się, że nie jest zbyt schludne, aby zezwolić funkcji na wyjście z programu na własną rękę bez zwracania kontroli do funkcji main (). (Przepraszam, jeśli to pytanie wydaje się całkiem oczywiste. Jestem nowym użytkownikiem C ++ i ogólnie programowania).

questionAnswers(6)

yourAnswerToTheQuestion