ifstream: проверить, успешно ли открылось

Коллега только что сказал мне, что этот код:

std::ifstream stream(filename.c_str());
if (!stream)
{
    throw std::runtime_error("..");
}

будет неправильным. Он сказал, что ifstream оценивается как 0, если открытие прошло успешно. Мой код работает, но я хотел найти документацию, но не видел, где говорится, как проверить, было ли открытие успешным. Можете ли вы указать мне на это?

38
задан honk 5 January 2016 в 15:17
поделиться