Kolega powiedział mi, że właśnie tego kodu:ifstream: sprawdź czy otwarto pomyślnie
std::ifstream stream(filename.c_str());
if (!stream)
{
throw std::runtime_error("..");
}
byłoby źle. Powiedział, że ifstream
ma wartość 0, jeśli otwarcie się powiedzie. Mój kod działa, ale chciałem znaleźć dokumentację, ale nie widziałem, gdzie jest napisane, jak sprawdzić, czy otwarcie się powiodło. Czy możesz wskazać mi to?
nie zapomnij sprawdzić 'stream.bad()', 'stream.good()', 'stream.fail()' i 'stream.is_open()'. westchnienie ... – Inverse
wielkie dzięki za link! Zgadzam się, że nie jest miło przeprowadzać kontroli przy użyciu tego operatora, więc zmienię to. Nie rozmawialibyśmy z nim jeśli (stream.fail()). – Philipp
The! jest przeciążony, aby sprawdzić "fail" i "zły" –